是重写规则:
RewriteEngine On
RewriteRule ^search/$ search/searchPage.php [L,NC]
.htacess文件位于网站的根目录
问题是当我输入domain.com/search/时,它并没有完全把我带到searchPage.php,它只是带我到403错误页面(注意这里没有index.php页面)。
这是在亚马逊弹性豆茎上传的
答案 0 :(得分:1)
你基本上是在考虑它,你需要做的就是调用完整的URL并将其重写为真实的URL。
像这样, RewriteRule ^search/category/(.+)/ domain.com/search/searchPage.php?crs_category=$1 [L]
然后你将它用作你的网址http://domain.com/search/category/business/并重写(不重定向)它到它所映射的位置。浏览器中的网址将保持不变。
我不确定100%的.htaccess是否在我头顶,但这是你要使用的方法。
有意义吗?
(。+)位是一个捕获组,它将捕获该类别,而$ 1是输出的位置,因为它是第一个捕获组。进一步阅读将有助于如何使用正则表达式。
正如我在评论中提到的一个路由器,这个方法的问题是你必须手动映射每一个,这对于一两个是好的,但可以快速实现真正的丑陋。