2015-02-08 76 views
0

所以,我想从这个重写我的网址: http://example.com/l1http://example.com/?loc=l1的.htaccess重写指数GET请求

目前我有这样的:

RewriteEngine On 

RewriteRule ^/(.*)$ ./?loc=$1 [NC,L] 

ErrorDocument 404 /errors/404.php 

但每次我键入http://example.com/l1时间它给我404错误!请帮忙!

+0

开头为什么你在那里指定一个相对路径('./')?相对于_什么?让它绝对,我会说... – arkascha 2015-02-08 20:59:32

+0

你是什么意思? – 2015-02-08 21:43:08

+0

Em ...奇怪的问题......'。/'是一个相对路径。如果我没有完全错误,那么放置它就没有意义。改为使用绝对路径,所以以'/'开头,而不是'。/'。所以:'RewriteRule^/(。*)$ /?loc = $ 1 [NC,L]' – arkascha 2015-02-09 09:34:00

回答

0

使用此的.htaccess:

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^(.*)$ /?loc=$1 [NC,L] 

ErrorDocument 404 /errors/404.php 

我不重写链接到现有文件与!-f
并且RewriteRule中的URI不以/