Apache没有';t在“文件”中提供文件;javascript";目录为什么?
突然间,我开始为Apache没有';t在“文件”中提供文件;javascript";目录为什么?,apache,ubuntu,debian,Apache,Ubuntu,Debian,突然间,我开始为http://example.localhost/javascript/jquery.min.js 早些时候一切正常。我没有更改任何配置,至少没有手动更改 但是现在如果我尝试访问/javascript目录本身,我会得到“无法服务目录/usr/share/javascript/:没有匹配的DirectoryIndex(index.html、index.cgi、index.pl、index.php、index.xhtml、index.htm)已找到,并且服务器生成的目录索引被Apac
http://example.localhost/javascript/jquery.min.js
早些时候一切正常。我没有更改任何配置,至少没有手动更改
但是现在如果我尝试访问
/javascript
目录本身,我会得到“无法服务目录/usr/share/javascript/:没有匹配的DirectoryIndex(index.html、index.cgi、index.pl、index.php、index.xhtml、index.htm)已找到,并且服务器生成的目录索引被Apache错误日志中的选项指令禁止。我试图在StackOverflow上找到解决方案,但无法找到。因此,如果有人碰巧遇到相同的问题,我就把它留在这里
那么,为什么它会出现在/usr/share/javascript中,而不是我在VirtualHost中配置的内容呢
$ cd /etc/apache2
$ grep -R Alias * | grep share
...
conf-enabled/javascript-common.conf:Alias /javascript /usr/share/javascript/
...
在谷歌搜索我找到的配置文件名之后
我不知道为什么,但我已经安装了软件包。
摆脱它似乎没有什么害处,所以做$sudo apt get purge javascript common
为我解决了这个问题。我试图在StackOverflow上找到解决方案,但我做不到。因此,如果有人遇到同样的问题,我就把这个问题留在这里
那么,为什么它会出现在/usr/share/javascript中,而不是我在VirtualHost中配置的内容呢
$ cd /etc/apache2
$ grep -R Alias * | grep share
...
conf-enabled/javascript-common.conf:Alias /javascript /usr/share/javascript/
...
在谷歌搜索我找到的配置文件名之后
我不知道为什么,但我已经安装了软件包。
摆脱它似乎没有什么害处,因此使用$sudo apt get purge javascript common
为我解决了这个问题。
使用JavaScript的Web应用程序需要通过
为每个脚本使用公共路径可以避免启用
在HTTP服务器中为每个包指定此路径
这是创建/usr/share/javascript
别名并在Apache Web服务器中启用它的包
建议修复
就是这样。javascript目录不会有任何其他问题。另一个修复方法是将/usr/share/javascript/
重命名为/usr/share/javascript common/
,然后调整javascript common.conf
中的别名以指向重命名的目录。我仍然不确定这是否会影响将来的任何更新
另一个解决方案:
转到/etc/apache2/conf available/javascript common.conf
。您将发现:
Alias /javascript /usr/share/javascript/
<Directory "/usr/share/javascript/">
Options FollowSymLinks MultiViews
</Directory>
这个:
使用JavaScript的Web应用程序需要通过
为每个脚本使用公共路径可以避免启用
在HTTP服务器中为每个包指定此路径
这是创建/usr/share/javascript
别名并在Apache Web服务器中启用它的包
建议修复
就是这样。javascript目录不会有任何其他问题。另一个修复方法是将/usr/share/javascript/
重命名为/usr/share/javascript common/
,然后调整javascript common.conf
中的别名以指向重命名的目录。我仍然不确定这是否会影响将来的任何更新
另一个解决方案:
转到/etc/apache2/conf available/javascript common.conf
。您将发现:
Alias /javascript /usr/share/javascript/
<Directory "/usr/share/javascript/">
Options FollowSymLinks MultiViews
</Directory>
您不需要编辑conf文件或清除包,只需禁用它即可
a2disconf javascript-common
service apache2 reload
如果出于某种原因,您希望使用该配置:
a2enconf javascript-common
service apache2 reload
您不需要编辑conf文件或清除包,只需禁用它即可
a2disconf javascript-common
service apache2 reload
如果出于某种原因,您希望使用该配置:
a2enconf javascript-common
service apache2 reload
我在一台机器上,没有A2DISCOF命令。我发现/etc/apache2/conf.d
目录是指向/etc/javascript common/javascript common.conf
的链接
我去编辑了那个文件(以root用户的身份),并通过将顶行改为alias/javascript common
而不是/javascript
Alias /javascript-common /usr/share/javascript/
保存并重新启动Apache。我在一台机器上,没有A2DISCOF命令。我发现/etc/apache2/conf.d
目录是指向/etc/javascript common/javascript common.conf
的链接
我去编辑了那个文件(以root用户的身份),并通过将顶行改为alias/javascript common
而不是/javascript
Alias /javascript-common /usr/share/javascript/
保存并重新启动Apache。我刚刚在Ubuntu系统上遇到了类似的问题。显然,javascript common
包在某个时间点被冲洗过,配置脚本无法正常运行。删除javascript common
并用apt get重新安装将无法修复它。我必须:
dpkg --purge javascript-common
apt-get install javascript-common
这似乎解决了问题。这是一个LTS(Xenial Xerus)系统,从LTS(Trusty Tahr)升级而来.我刚刚在Ubuntu系统上遇到了类似的问题。显然,javascript common
软件包在某个时间点被冲洗过,配置脚本无法正常运行。删除javascript common
并用apt get重新安装无法解决问题。我必须:
dpkg --purge javascript-common
apt-get install javascript-common
这似乎解决了问题。这是一个从LTS(Trusty Tahr)升级的LTS(Xenial Xerus)系统。卸载apache2
并删除以下文件夹:
- rm-R/var/www/html/
- rm-R/etc/apache2
然后重新安装
javascript common
和apache2
卸载apache2
并删除以下文件夹:
- rm-R/var/www/html/
- rm-R/etc/apache2
然后重新安装
javascript common
和apache2
我已经有一个多星期的问题了,这就解决了!我知道这是一个古老的答案,但谢谢你!sudo a2discof javascript common.conf
是一个更温和的解决方案,尽管我更喜欢炸药。这里需要严肃的google funks f