我如何设置 htaccess 以允许更改发生?

How do i setup htaccess to allow changes to occur?

重写规则如下:

RewriteEngine On

RewriteRule ^search/$ search/searchPage.php [L,NC]

.htacess 文件位于网站的根目录

问题是,当我只输入域时,它并没有完全把我带到 searchPage.php。com/search/,它只是把我带到一个 403 错误页面(注意没有 index.php 页面在这里)。

这是上传到amazon elastic beanstalk

你基本上是在倒着想,你需要做的是调用完整的url并重写为真实的。

像这样,

  RewriteRule ^search/category/(.+)/ domain.com/search/searchPage.php?crs_category= [L]

然后您将使用它作为您的 url http://domain.com/search/category/business/ 并将其重写(而不是重定向)到它映射的位置。浏览器中的 url 将保持不变。

我不确定 100% 的 .htaccess 是否在我的脑海中,但这是你会使用的方法。

有道理吗?

(.+) 位是捕获组,将捕获类别,$1 是输出的位置,因为它是第一个捕获组。一些有帮助的进一步阅读是如何使用正则表达式。

正如我在评论中提到的路由器,此方法的问题是您必须手动映射每个路由器,这对一两个路由器来说没问题,但很快就会变得非常丑陋。