我正在尝试在我设置的Ubuntu服务器上启用.htaccess文件。我更改了网站文件:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
[unnecessary config code omitted]
</VirtualHost>
到
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/document_root
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/document_root>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
[unnecessary config code omitted]
</VirtualHost>
现在,当我尝试在浏览器中查看某个页面时,出现500内部服务器错误。关于我的问题可能是什么想法?谢谢你的帮助。
修改
这是我的.htaccess文件:
RewriteEngine on
RewriteCond $1 !^(index\.php|images|css|js|robots\.txt|favicon\.ico)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php/$1 [L]
我按照请求检查了apache错误日志,似乎记录的错误是:
[Fri Jul 10 19:39:12 2009] [alert] [客户192.168.1.1] /var/www/document_root/.htaccess: 命令'RewriteEngine'无效, 可能拼写错误或由a定义 模块未包含在服务器中 构造
答案 0 :(得分:1)
Bah ...我没有启用mod_rewrite。我觉得很蠢。