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