重写URL在核心PHP Localhost项目中不起作用



我必须将我的URL变成友好的URL。

我在.htaccess文件中有一个:

RewriteRule http://localhost/test/client/this_is_test_page.php$ http://localhost/test/test-page [NC,R=301,L]

,但是现在我得到了http 500内部服务器错误。

是什么可能导致这一点,我该如何修复?

您不应根据Apache文档中的模式中的http_host:

重写词由三个被空间隔开的参数组成。这 论点是:

  1. 模式:哪些传入URL应受该规则的影响;
  2. 替换:匹配请求应在哪里发送;
  3. [flags]:影响重写请求的选项。

模式是正则表达式。最初是(第一个 重写规则或直到发生替代)与 传入请求的URL路径(主机名之后的零件但 在指示查询字符串开始的任何问号之前)

您的规则应该是:

RewriteRule /test/client/this_is_test_page.php$ /test/test-page [NC,R=301,L]

您应该启用mod_rewriteRewriteEngine OnAllowOverride

最新更新