【问题标题】:403 Forbidden ONLY on javascript folder403 Forbidden ONLY on javascript 文件夹
【发布时间】:2015-03-10 12:19:35
【问题描述】:

我已经尝试解决这个问题 3 天,但在经历了许多其他 SO 问题后仍然无法弄清楚。

我正在使用 Apache 2.4.7 设置 DigitalOcean VPS。 2.4 的设置与以前的版本不同,所以这可能是我的问题的一部分。

问题

我正在从共享主机迁移,并尝试在新的 DO VPS 上测试我的网站。当我转到我的新 IP 地址时,网站会加载,但以下资源会出现 404 错误:

<link href="/javascript/jquery-ui-1.9.2.custom/css/smoothness/jquery-ui-1.9.2.custom.css" rel="stylesheet">
<script src="/javascript/jquery-ui-1.9.2.custom/js/jquery-ui-1.9.2.custom.js"></script>
<script src="/javascript/dialog/alert_text.js"></script>

其他文件夹中的资源加载正常;例如,这个样式表加载没有问题:

<link rel="stylesheet" type="text/css" href="/styles/main_style.css">

我在我的 /javascript 目录中找到了一个 403 禁止错误的问题。此目录由同一所有者/组拥有,并且与我的 Web 根目录中的所有其他目录具有相同的权限 (755)。但由于某种原因,我无法从我的网络浏览器访问 /javascript。

我尝试了什么

文件确实存在于该位置的新服务器上。我检查了文件夹是否正确,并且没有任何奇怪的大写字母。旧服务器上一切正常,我所做的只是将目录结构复制并粘贴到新服务器上。

服务器上没有 .htaccess 文件。并且服务器不会关心是否存在,因为 Alow Override None 已设置。

我已将我的 apache2.conf 改回默认状态,以确保没有奇怪的 &lt;Directory&gt; 指令。

我为 /javascript 文件夹添加了 &lt;Directory&gt; 并添加了 Require all granted

我将 /javascript 文件夹的权限更改为 chmod 777 无效,然后更改回 chmod 755

每次更改后我都会重新启动网络服务器,但没有任何效果。我总是在 /javascript 目录上收到 403 禁止错误,即使所有者和权限与我的 Web 根目录中的所有其他目录完全相同。

有什么方法可以获取有关 403 错误的更多信息吗?有什么方法可以找出为什么它不允许访问?

最后说明

需要注意的一点是,我尚未将我的 DNS 指向 DigitalOcean,因为我仍在测试。所以客户端浏览器正在从 MY.IP.ADR.ESS/javascript/... 而不是 MYDOMAINNAME/javascript/... 加载。我无法想象这会很重要,但我想我还是会提到它。

【问题讨论】:

  • 由于您正在迁移,这可能是cross-site scripting 的问题吗?
  • 我不确定您的意思...您是说有人入侵了我的全新服务器并恶意禁止我查看我的 /javascript 目录吗? ;-)
  • 如果您的主要内容托管在yourdomain.com,但脚本来自my.ip.adr.ess,则浏览器可能会认为这是跨站点脚本攻击,因此拒绝加载您的脚本。
  • 我不这么认为 djs,上面列出的所有链接都是相对于 web 根的。域名未列出。这也无法解释尝试从 Web 浏览器访问 /javascript 目录时出现的 403 错误。

标签: web-services file-permissions server permission-denied


【解决方案1】:

我发现了问题,这是一个已知问题:Ubuntu BUG

问题在于文件夹的名称是“javascript”,而修复只是将我的 /javascript 文件夹重命名为 /java-script(或 /javascript 以外的任何内容)。

基本上,如果您安装了 javascript-common 包,它会生成以下别名:

Alias /javascript /usr/share/javascript

所以我的 WEBROOT/javascript 文件夹被重定向到 /usr/share/javascript,出现 403 错误。

希望这有助于为其他人节省几天的故障排除时间!

【讨论】:

    猜你喜欢
    • 2018-08-05
    • 2013-11-01
    • 2019-12-18
    • 1970-01-01
    • 2014-10-03
    • 2018-09-03
    • 1970-01-01
    • 2015-05-18
    • 2016-01-31
    相关资源
    最近更新 更多