我的网站用户个人资料页面是
http://website.com/profile?name=test
我正在使用get方法获取变量名称 我正试图让上面的网址像是一样清理,
http://website.com/test
我的.htaccess内容
RewriteEngine On
RewriteBase /creatorsink/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ $1.php [L]
RewriteRule ^([a-z]+)/?$ profile.php?name=$1 [L,QSA]
有没有办法用一个获取名字的选项呢?
答案 0 :(得分:4)
您可以使用mod_rewrite
。例如,您的.htaccess
文件应如下所示:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/?$ profile.php?name=$1 [L,QSA]
以下是对上述内容的简要说明:
RewriteEngine On
打开引擎(正如预期的那样)。
RewriteCond %{REQUEST_FILENAME} !-f
不会重写任何内容,并且是文件。
RewriteCond %{REQUEST_FILENAME} !-d
不会重写任何内容,并且是目录。
RewriteRule ^([^/]+)/?$ profile.php?name=$1 [L,QSA]
这是实际的重写规则。它需要在域名之后的任何内容(除正斜杠之外的任何内容),并将其重写为profile.php
,并将其作为name
参数传递。