我正在寻找解决问题的方法,我发现了这个 link 。但这并不能解决我的问题。我目前正在使用 PHP 构建一个网站,并且我已经在 url 中使用了查询字符串。例如,我有很多这样的网址:
www.example.com?page=something
and also
www.example.com?page=something&action=anything
我只想拥有:
www.example.com/something
and
www.example.com/something/anything
我也是 .htacess 脚本的新手,所以即使我从 Google 得到了一些建议,我也不知道该脚本对我意味着什么。
谢谢。
最佳答案
为此有不同类型的架构。
最常见的是mod_rewrite
。使用一组RewriteRule
,您可以根据需要重定向流量。
一个例子是:
RewriteEngine On
RewriteBase /
RewriteRule ^([^/]+)(?:/([^/]+))? index.php?page=$1&action=$2 [L]
但是,这些规则的管理可能会变得复杂。在您的情况下,您必须为 URL 创建另一个规则,例如:/some/other/page
另一种方法是使用 Front-end Controller Pattern 。您的所有流量都会通过一个位置(例如index.php)进行过滤路由。如果您运行的是 Apache 2.2.17 或更高版本(现在大多数服务器都是这样),您可以使用 FallbackResource
在一行中完成此操作。 .
例如:
FallbackResource /index.php
关于php - .htaccess 使 URL 对搜索引擎友好,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11043946/