我有 Ubuntu 12.04。我在 apache 的文档根目录中有一个文件index.html
,但是当我从浏览器访问文档根目录时,apache 列出了所有文件。
index.html
如果我替换为 则效果很好index.php
。
我的/etc/apache2/sites-enabled/000-default
:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /home/test/www
<Directory /home/test/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
</VirtualHost>
我有/etc/apache2/mods-enabled/dir.conf
:
<IfModule mod_dir.c>
DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm
</IfModule>
我做了很多搜索,但不知道为什么index.html
不起作用并且在浏览器中列出。
如果我保留这两个文件(index.html 和index.php),那么index.php 工作正常。
这是输出ls -l /home/test/www
:
total 1816236
-rw-r--r-- 1 root www-data 3 Jun 3 10:09 index.html
-rw-r--r-- 1 ubuntu www-data 53 Mar 4 16:55 index.php
drwxrwsr-x 5 ubuntu www-data 4096 May 12 05:03 lifetimeholidays
-rw-r--r-- 1 root www-data 1859796992 May 29 10:32 magentolive17_4_2014.zip
drwxrwsr-x 15 ubuntu www-data 4096 May 28 15:22 railsapp
drwxr-sr-x 15 root www-data 4096 May 28 17:15 railsapp1
drwxrwxr-x 2 ubuntu www-data 4096 Apr 29 09:05 var
答案1
你有.htaccess
文件吗/home/test/www/
?该AllowOverride All
节将允许读取该文件,该文件是该目录的 Apache 动态配置文件。它的内容覆盖/etc/apache2/sites-enabled/000-default
.