我为我的网站创建了一堆 RewriteRules,并且在我的本地设置中没有遇到任何问题。这是我的 .htaccess 中的一个片段:
Options +FollowSymLinks -MultiViews
RewriteEngine On
RewriteRule ^news/?$ news.php [L]
在本地,当我访问 127.0.0.1/news 时,它会正确重定向到 news.php 并屏蔽 URL。我刚刚更新了远程服务器上的 .htaccess 文件并在尝试访问上述示例时收到此错误:
在此服务器上未找到请求的 URL /mnt/target02/123456/123456/www.mywebsite.com/web/content/news.php。
我尝试将规则更改为:
RewriteRule ^news/?$ http://www.mywebsite.com/news.php [L]
并且页面正确加载。但是,地址栏显示的是 news.php,而不是 news。有什么我遗漏的东西,还是我被丑陋(而且不太安全)的地址困住了?谢谢!