2016-07-07 65 views
-1

我试图让一个链接更简单。.htaccess RewriteRule试图让一个链接更简单的问题

例如:

example.com/r.php?i=1 

example.com/1 

我试图做的是:

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

RewriteRule ^(.*)$ r.php?i= [L,QSA] 

但它不工作,除非我做的:

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

而且我希望根据用户放入链接自动完成。

我也试过:

RewriteRule ^(.*)$ r.php?i=%{REQUEST_URL} [L,QSA] 

而且

RewriteRule ^(.*)$ r.php?i={REQUEST_URL} [L,QSA] 

他们都不似乎工作。 我没有.htaccess文件的经验。

+0

试穿 重写规则此 选项+了FollowSymLinks RewriteEngine叙述(。*)http://example.com/1/$1 [R = 301,L] –

+0

你的例子应工作得很好,请注意'$ 1'与数字'1'没有任何关系,它只是您的案例中第一个被捕获的变量。 – jeroen

+0

我明白了,感谢您的帮助。 – ErroR

回答

-1

尝试此

RewriteEngine On 

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

RewriteRule ^(.*)$ r.php?i=$1 [L,QSA] 
+3

这与OP有何不同? – jeroen

+0

没关系。我再次做了它,它似乎工作。这可能只是我之前没有注意到的。 – ErroR