.htaccess 站点未检测到索引
我正在使用Ubuntu 14.04.2 Apache 2.4.7 我设置了一个虚拟主机,为.htaccess 站点未检测到索引,.htaccess,httpd.conf,apache2.4,directoryindex,mod-dir,.htaccess,Httpd.conf,Apache2.4,Directoryindex,Mod Dir,我正在使用Ubuntu 14.04.2 Apache 2.4.7 我设置了一个虚拟主机,为/var/www/dev中的文件提供服务,而dev.conf的配置文件如下所示: <VirtualHost *:80> ServerAdmin ubuntu@12.234.567.89 DocumentRoot /var/www/dev ServerName dev.site.com <Directory /> Options
/var/www/dev
中的文件提供服务,而dev.conf
的配置文件如下所示:
<VirtualHost *:80>
ServerAdmin ubuntu@12.234.567.89
DocumentRoot /var/www/dev
ServerName dev.site.com
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /var/www/dev/>
Options -Indexes +FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
DirectoryIndex
应该告诉浏览器使用index.php
文件,但是我得到了一个403禁止的错误
我试过:
- 打开权限,递归地将
的所有权更改为/var/www/dev
www-data:www-data
- 将
添加到DirectoryIndex.php
标记中的
文件中-在选项项的上方和下方dev.conf
- 检查
是否处于活动状态(它处于活动状态)mod_dir
- 将indexes选项更改回
——当我加载我的站点时,它会显示物理文件索引+indexes
- 当我获得403或目录索引时刷新浏览器将正确加载我的页面
- 每次在浏览器中测试时清除浏览器缓存
- 查看了我的
文件,可以确认没有其他对apache2.conf
DirectoryIndex
- 删除对DirectoryIndex的所有引用并将选项更改为+Indexes-这会使一切正常,但用户可以看到所有文件夹的目录索引,包括我不希望他们访问的文件夹
AH01276: Cannot serve directory /var/www/dev/: No matching DirectoryIndex (index.php,index.html) found, and server-generated directory index forbidden by Options directive
access.log仅显示我的浏览器详细信息-
"GET / HTTP/1.1" 200 1462 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:41.0) Gecko/20100101 Firefox/41.0"
它在apache访问/错误日志中说明了什么?在编辑日志中添加了我的日志输出,错误日志显示“找不到匹配的DirectoryIndex”。这意味着,它不存在,或者被另一个指令覆盖。感谢Olaf-这就是我一直在调查的。DirectoryIndex就在那里,它是我的htaccess的第一行(上面)。我已经检查了dev.conf,这里没有设置DirectoryIndex。它在mods enabled/dir.conf中设置正确。还有什么可以覆盖它?其他地方可以看吗?听起来都不错,你也加载了模块吗?是否有
mods启用/dir.load
?
"GET / HTTP/1.1" 200 1462 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:41.0) Gecko/20100101 Firefox/41.0"