apache - 将 IIS htaccess 转换为 Apache htaccess 拆分 URL
问题描述
第一篇文章 - 进行了很好的搜索,但找不到我想要的东西。
我在 IIS 服务器上有一个使用 htaccess 重写规则的 PHP 网站,需要迁移到 linux/Apache
我的 URL 的第一个链接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
解决方案
推荐阅读
- django - 在 Minikube 问题上将 OpenFaaS 安装到您的 Kubernetes 集群
- php - 每年重置发票
- laravel-5 - Laravel如何更新多个id值
- python - 使用 Python(spicy.optimize)进行优化 - 约束问题
- python - 如何在一行中有来自 2 个不同功能的 2 个输出?
- r - 如何在同一张图中绘制 2 个条形图
- javascript - 如何降低 if/else 复杂性?
- python-3.x - 重新排列字符串以制作新字符串
- batch-file - 在批处理文件中使用 icacls(括号问题)
- python - Django - 注释字典在模板中无法正确显示