我花了一些时间尝试不同的方法来向我的 URL 添加尾部斜杠,例如这个:
在我的生产站点上,这适用于以下规则:
RewriteEngine ON
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*[^/])$ /$1$2/ [R=301,L]
但它不适用于我的本地开发设置。我在 上运行本地站点localhost:9090
,因此当我访问诸如localhost:9090/users/new/
500 内部服务器错误之类的 URL 时。
我尝试过使用类似的规则%{HTTP_POST}
,但这也不起作用。我觉得我错过了一些东西,并且在网上搜索一直指向我已经尝试过的规则。
拥有适用于开发和生产的规则的最佳方式是什么?
笔记
在@anubhava 提供了一些很好的建议后,我重新组织了我的规则,并为现有需求找到了一些更好的规则。我最终选择了一个新的 PHP 扩展规则和他的建议,现在它在localhost
生产和生产中都有效。