我想让我的.htaccess
在我的Ubuntu-apache2-webserver上工作。
为此,我打开了/etc/apache2/apache2.conf
,
我在AccessFileName .htaccess之前删除了注释符号(#)
并在
AllowOverride None
替换为AllowOverride All
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
我通过mod_rewrite
重写激活a2enmod
并重新启动服务器。
但每次我执行这些更改并打开放在/ var / www / html中的html文件时,我都会收到虚拟主机80的500内部服务器错误。
放置
时发生了同样的事情<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
在</VirtualHost>
之前进入000-default.conf
- 文件而不是/etc/apache2/apache2.conf
。
有谁能告诉我我错过了什么?
答案 0 :(得分:0)
您在allowOverride
的语法中稍微偏离了一点。 Directory
代码需要 VirtualHost
代码。像这样:
<VirtualHost *:80>
DocumentRoot /var/www/html
ErrorLog /var/log/apache2/error.log
Options Includes
<Directory "/var/www/html">
AllowOverride All
</Directory>
</VirtualHost>
此外,请确保Apache具有读取和写入目录/var/www/html