使用 GET 参数将所有子文件夹重定向到 URL

Redirecting all subfolders to URL with GET parameters

关于重定向规则的快速提问。我正在做一个 url 缩短服务,我想从以下位置获得所有链接:

http://www.shortener/url

至: http://www.shortener/index.php?p=url

我在我的 OVH .htaccess 上尝试了以下代码:

RewriteEngine On
RewriteRule ^/(.*)$ index.php?p= [R=301,L]

但这不起作用,我尝试删除“/”:

RewriteEngine On
RewriteRule ^/(.*)$ index.php?p= [R=301,L]

但是我的页面上有 ERR_TOO_MANY_REDIRECTS 错误。

我该怎么办?

为什么你会看到错误,因为那里发生了无限循环,所以我们需要在那里放置一个条件。您能否根据您显示的示例尝试以下操作。请确保在测试您的 URL 之前清除浏览器缓存。

RewriteEngine ON
RewriteCond %{REQUEST_URI} !-f
RewriteCond %{REQUEST_URI} !-d
RewriteRule ^(.*)/?$ index.php?p= [L]