第一篇文章-进行了很好的搜索,找不到我想要的东西。
我在IIS服务器上有一个使用htaccess重写规则的PHP网站,需要迁移到linux / Apache
我的网址
第一个链接https://www.radiatorwholesalers.com.au/ford_radiators/
然后https://www.radiatorwholesalers.com.au/ford_radiators/falcon/
最后是https://www.radiatorwholesalers.com.au/falcon/ba-4.0l%2002-05%20man/252.htm
这些规则在IIS中有效
RewriteRule ^(.*)/(.*)/(.*)\.htm$ proddetail.php?prod=$3
RewriteRule ^(.*)/(.*)/$ catalogue.php?mfname=$1&modelname=$2
RewriteRule ^(.*)/$ catalogue.php?mfname=$1
我将其编辑为以下内容,以使其开始工作-但我没有选择型号名称(猎鹰)
RewriteRule ^(.*)/(.*)/(.*)\.htm$ proddetail.php?prod=$3
RewriteRule ^(.*)/(.*)/(.*)/$ /catalogue.php?mfname=$1&modelname=$2
RewriteRule ^(.*)/$ /catalogue.php?mfname=$1
第二行,我必须在提取的MFNAME中添加额外的(。*)/-不知道为什么? 必须添加/到正确的路径。 IIS都不要求。
似乎第二条规则被第三条规则取代。
我的htaccess状况
Options +Indexes
Options +FollowSymlinks
RewriteEngine on
RewriteRule ^(.*)/(.*)/(.*)/(.*)\.htm$ proddetail.php?prod=$3
RewriteRule ^(.*)/(.*)/(.*)/$ catalogue.php?mfname=$1&modelname=$2
RewriteRule ^(.*)/$ catalogue.php?mfname=$1