我有一些我在WordPress网站上使用的自定义PHP页面。我想通过GET方法使用包含几个变量的干净URL。我搜索并尝试了不同的htaccess代码变体以及下面的WordPress htaccess代码,但没有成功。
我希望用户浏览并使用的网址为www.thedomain.com/thefolder/details/123456/RES,而不是www.thedomain.com/thefolder/details.php?mls=123456&ret= RES
我已将我的代码放在根目录中的htaccess文件中。我还在details.php文件所在的目录中的htaccess中单独尝试了它。
RewriteEngine On
## WordPress code
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ./ /index.php [L]
## my code
RewriteBase /thefolder/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-zA-Z0-9]+)$ details.php?mls=$1&ret=$2
RewriteRule ^([a-zA-Z0-9]+)/$ details.php?mls=$1&ret=$2
答案 0 :(得分:0)
您可以将QSA添加到RewriteRule标志:
RewriteRule {from-url} {to-url} [L,NC,QSA]
RewriteRule page_([0-9]+)\.html page.php?id=$1 [QSA]
将page_1.html?a = 2重定向到page.php?id = 1& a = 2
但是,请注意,因为请求page_1.html?id = 2将重定向到page.php?id = 1& id = 2,并且(在PHP中),$ _GET ['id']将为2。