我已经有一段时间没有和Apache合作过了,所以请友好一点--我也知道这个问题,但这对我没有多大帮助。
我想为Icinga实例设置一个简单的vHost w/ Apache。Icinga已经启动并运行,我可以从x.x/icinga访问它,但是我希望能够在外部和内部访问它。
我已经设置了/etc/ vhost文件,下面是我在httpd.conf中的简单vhost语句
<VirtualHost *:80>
ServerAdmin me@mydomain.com
DocumentRoot /usr/share/icinga
ServerName icinga.domain.com
ErrorLog logs/icinga.com-error_log
CustomLog logs/dummy-host.example.com-access_log common
</VirtualHost>我的.htaccess文件中也有以下内容
<Directory>
Allow From All
Satisfy Any
</Directory>已经为我网络上的Windows DNS服务器中的实例输入了一个条目,但是当我试图通过URL访问站点时,会遇到内部服务器错误。
查看/var/log/icinga.com-error_log,我会看到以下条目。
[Thu Dec 13 16:04:39 2012] [alert] [client 10.0.0.1] /usr/share/icinga/.htaccess: <Directory not allowed here有人能帮我找出我的错误吗?
发布于 2012-12-14 21:37:47
只需删除<Directory>文件中的.htaccess内容即可。
Apache知道它应用到哪个目录-因此,它就是.htaccess文件所在的目录!您不能覆盖.htaccess文件中其他目录的配置(安全特性)。此外,如果要将目录放在主配置中,则<Directory>开始标记会忽略目录本身;它应该是<Directory /path/to/dir>。
发布于 2012-12-14 21:37:51
Apache确切地告诉您出了什么问题:<Directory>不允许here (在.htaccess文件中)。
如果您查看Apache文档,您会发现<Directory>只允许在两个上下文中使用:服务器配置和虚拟主机。
( .htaccess文件的内容隐式地应用于包含它的文件系统目录,因此不需要<Directory>指令。)
您还可以在Apache文档中找到关于如何编写的教程.htaccess文件,这可能会有所帮助。
https://serverfault.com/questions/457931
复制相似问题