我遇到.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
非常感谢任何帮助!
答案 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]