未找到 Javascript 404,但正在加载 PHP 和 CSS

未找到 Javascript 404,但正在加载 PHP 和 CSS

我有一个运行默认 LAMP 堆栈的 Ubuntu 10.04.4 LTS 云服务器。

我的网站正在提供我的 PHP 页面、与之配套的图像和 CSS,并且大多数 JS 正在加载,但有一个特定的文件夹没有加载 javascript 文件。

如果我访问我的网站,site.com/javascript/search.js然后我得到 404。如果我访问site.com/includes/formvalidation.js然后 JS 文件加载。

这显示了包括JavaScript的文件夹:

user@server~site/httpdocs$ ls -la | grep includes
drwxr-xr-x  5 user www-data    4096 Jun 14 23:53 includes

user@server~site/httpdocs$ ls -la includes | grep .js
-rwxr-xr-x  1 user www-data 20974 Mar  2 22:33 formvalidation.js

user@server~site/httpdocs$ ls -la | grep javascript
drwxr-xr-x  3 user www-data    4096 Jun  3 11:03 javascript

user@server~site/httpdocs$ ls -la javascript | grep .js
-rwxrw-r-x  1 user www-data  7276 Mar  2 22:33 calendar.js
-rwxrw-r-x  1 user www-data 33321 Jun  3 11:03 cookieControl-5.1.min.js
-rwxrw-r-x  1 user www-data 15552 Mar  2 22:33 image_display.js
-rwxrw-r-x  1 user www-data 21130 Mar  2 22:33 popcalendar.js
-rwxrw-r-x  1 user www-data 67956 Mar  2 22:33 search.js
-rwxrw-r-x  1 user www-data   555 Mar 31 00:15 sell.js
-rwxrw-r-x  1 user www-data   318 Mar 31 00:15 sign_in.js
-rwxrw-r-x  1 user www-data   142 Mar 31 00:15 update.js

因此文件上传后,它具有与其他文件相同的权限包括,以及包括JavaScript的文件夹具有相同的权限。

没有.htaccess文件,这在我的开发服务器上本地运行良好,只有当我推送实时内容时才会出现问题。

更新:我创建了一个文件,测试.js并将其放在根目录。这可以在site.com/test.js。我移动了“mv test.js javascript/* 并访问site.com/javascript/test.js给出 404

更新:检查/var/log/apache2/error.log节目文件不存在:/usr/share/javascript/search.js

更新:我搜索过javscript在我的/etc/apache2文件夹中找到了以下内容:

user@site:/etc/apache2$ grep -iR javascript ./       
./mods-available/deflate.conf: AddOutputFilterByType DEFLATE application/x-javascript application/javascript  application/ecmascript    
./mods-enabled/deflate.conf: AddOutputFilterByType DEFLATE application/x-javascript application/javascript application/ecmascript
./conf.d/javascript-common.conf:Alias /javascript /usr/share/javascript/
./conf.d/javascript-common.conf:<Directory "/usr/share/javascript/">

答案1

看来您的./conf.d/javascript-common.conf:文件中有一个别名导致 Apache 查找错误的位置。正如您所指出的,删除这些条目可以解决问题,Apache 会很开心。

答案2

这对我有用

sudo a2disconf javascript-common

javascript-common.conf将从conf-available和中删除conf-enabled

相关内容