【发布时间】:2022-01-08 19:45:14
【问题描述】:
在将 HTTPS 和非 www 的这些规则添加到顶部的 .htaccess 文件后,我正在尝试修复此错误
RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,NE,R=301,QSA]
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule (.*) https://www.%{HTTP_HOST}%{REQUEST_URI} [L,NE,R=301,QSA]
它确实修复了 HTTPS 和非 www,但它搞砸了这条规则
RewriteRule ^product/([0-9]+)$ product.php?p=$1 [NC,L,QSA]
现在只要没有 HTTPS 或没有 www,它就会更改此 URL
- 来自:
www.example.com/product/2443 - 至:
www.example.com/product.php/2443?p=2443
我希望它再次回到这个:
www.example.com/product/2443
【问题讨论】:
标签: apache .htaccess mod-rewrite url-rewriting