【问题标题】:Both ugly URL and seo friendly URL are working. How to disable the ugly URL?丑陋的 URL 和 seo 友好的 URL 都在工作。如何禁用丑陋的 URL?
【发布时间】:2015-04-01 07:50:56
【问题描述】:

我正在使用 RewriteRule 将丑陋的 URL 更改为 seo 友好的 URL。但现在两个 URL 都在同时工作。如何禁用丑陋的 URL?

【问题讨论】:

  • 您可以采用的方法太多。规范,301 重定向,...告诉我们您的设置/配置以及您尝试过的内容。
  • 我不确定你指的是哪个设置/配置,但这是我的重写规则 RewriteRule ^test ?action=viewArticle&articleId=23 [NC,L]

标签: php apache .htaccess mod-rewrite


【解决方案1】:

处理这种事情的最佳方法是在 PHP 本身内处理 路由。有许多 router 库将 URL 映射到函数/类/控制器反之亦然,这确实是处理 URL 的最明智的方法。在这种情况下,您只需要一个通用的 RewriteRule,它将 所有 URL 重写为一个规范的处理程序:

RewriteRule ^ index.php

index.php 然后处理所有路由,因为它只会处理“漂亮的 URL”,所以丑陋的 URL 不会匹配它的任何路由。有了这条规则,Apache 将不再将任何“丑陋的 URL”直接匹配到文件。

例如,见http://symfony.com/doc/current/components/routing/introduction.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-06-03
    • 2011-07-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多