Htaccess文件无响应 - 内部服务器错误500

时间:2013-01-10 19:25:48

标签: .htaccess mod-rewrite friendly-url internal-server-error

我遇到.htaccess文件有问题,基本上我只是想重写网址,以便更加用户友好。所以我目前的网址是这样的:

http://diverseevolution.com/index.php?url=about

我想要的是这样的:

http://diverseevolution.com/about/

最后,我编写了自己的.htaccess文件,如下所示:

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l

RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]

现在我已经在我服务器的其他目录中对此进行了测试,它运行正常,但在实际域下,而不仅仅是一个子目录,它给了我一个Internal Server Error 500

非常感谢任何帮助!

2 个答案:

答案 0 :(得分:1)

你可以试试这个:

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI}  ([^/]+)/?   [NC]
RewriteRule .*  index.php?url=%1     [L,QSA]

它将静默地映射:

http://diverseevolution.com/anything/

要:

http://diverseevolution.com/index.php?url=anything

答案 1 :(得分:0)

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l

RewriteRule ^((about)([^?]*)) index.php?url=about [L,NC]