我有一个名为car-details.php的文件,它采用变量id = with cars registration details来填充页面。
我目前可以使用此重写规则
RewriteRule ^car-for-sale/(.*) car-details.php?id=$1 [NC,L]
但我希望有一个像
这样的网址/GV09LBX/Ford-car-something-etc
但由于某种原因,我无法让网址的第二部分工作。我按照一些指南来添加第二部分到下面的网址示例
RewriteRule ^car-for-sale/(.*)/(.*) car-details.php?id=$1&something=$2 [NC,L]
car-details.php文件甚至没有使用某些东西= $ 2,但我只想在网址中将汽车名称用于seo目的。每当我尝试添加第二个正斜杠时,重写规则就会停止工作。有什么帮助吗?
下面的完整htaccess文件
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^car-for-sale/(.*)/(.*) car-details.php?id=$1&something=$2 [NC,L]
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
# Wordfence WAF
<IfModule LiteSpeed>
php_value auto_prepend_file '/home/shipley/public_html/wordfence-waf.php'
</IfModule>
<Files ".user.ini">
<IfModule mod_authz_core.c>
Require all denied
</IfModule>
<IfModule !mod_authz_core.c>
Order deny,allow
Deny from all
</IfModule>
</Files>
答案 0 :(得分:0)
您必须在模式中使用锚点:
RewriteRule ^car-for-sale/([^/]+)/([^/]+)/?$ car-details.php?id=$1&something=$2 [NC,L,QSA]
RewriteRule ^car-for-sale/([^/]+)/?$ car-details.php?id=$1 [NC,L,QSA]