6

我试图启用 htaccess。我变了:

<Directory /var/www/abc.biz/>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    Order allow,deny
    allow from all
</Directory>

到:

<Directory /var/www/abc.biz/>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride All
    Order allow,deny
    allow from all
</Directory>

但我收到 500(内部服务器)错误。为什么?

这是我的/etc/apache2/sites-available/default文件:

<VirtualHost *:80>
ServerAdmin admin@abc.biz

DocumentRoot /var/www/abc.biz
<Directory />
    Options FollowSymLinks
    AllowOverride None
</Directory>
<Directory /var/www/abc.biz/>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    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 Indexes MultiViews FollowSymLinks
    AllowOverride None
    Order deny,allow
    Deny from all
    Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>

</VirtualHost>
4

1 回答 1

5

我认为您需要更改 /etc/apache2/sites-available/default 的这一部分

DocumentRoot /var/www/abc.biz
<Directory />
    Options FollowSymLinks
    AllowOverride None
</Directory>
<Directory /var/www/abc.biz/>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    Order allow,deny
    allow from all
</Directory>

DocumentRoot /var/www/abc.biz
<Directory />
    Options FollowSymLinks
    AllowOverride All
</Directory>
<Directory /var/www/abc.biz/>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride All
    Order allow,deny
    allow from all
</Directory>

因为起初<Directory /> AllowOverride All您允许使用 .htaccess 文件覆盖整个 apache 的设置,但您还需要<Directory /var/www/abc.biz/> AllowOverride All针对您的网站所在的特定主机目录更改它。此外,您应该检查放置在 /var/www/abc.biz 目录中的 .htaccess 文件是否正确写入,因为当您启用 .htaccess 文件以覆盖全局 apache 设置时,错误的 .htaccess 文件会导致此类错误。

于 2012-07-07T18:18:08.800 回答