【发布时间】:2021-09-04 06:39:34
【问题描述】:
我想将以下所有模式网址重定向到“?”之前网址 即
Xyz.com/worksheet/rebus/?random=testing11
Xyz.com/worksheet/rebus/?abc
Xyz.com/worksheet/rebus/?l=1
应该被重定向到
Xyz.com/worksheet/rebus/
我尝试了很多东西,但都没有成功。我该如何使用 .htaccess
尝试的规则
RewriteBase /worksheet/
RewriteRule ^rebus/?$ /worksheet/rebus/ [L,R=301]
总体
RewriteEngine On
RewriteBase /worksheet/
RewriteCond %{THE_REQUEST} \s/(rebus)/\?(\S+)\s [NC]
RewriteRule ^ /worksheet/%1/ [R=301,L]
#RewriteRule ^rebus/?$ /worksheet/rebus [L,R=301]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/([^/]+)?$ index.php?url=$2&tableName=$1 [L,QSA]
RewriteRule ^([^/]+)/([^/]+)/([^/]+)?$ index.php?url=$2&tableName=$1 [L,QSA]
RewriteRule ^([^/]+)/([^/]+)/([^/]+)/([^/]+)?$ index.php?url=$2&tableName=$1&showSol=$3 [L,QSA]
【问题讨论】:
-
欢迎来到 SO,请在您的问题中添加您尝试过的 htaccess 规则文件,谢谢
-
@RavinderSingh13 完成
-
感谢您这样做。您在浏览器中点击 Xyz.com/worksheet/rebus/?random=testing11 链接?如果是,那么它应该从后端的哪个文件中获取?
-
我需要一个使用 .htaccess 的重定向规则,它不依赖于后端
-
我明白了,但是每个页面/Uri 都可以在后端将它重写为 index.php 或 index.html 之类的文件。像这样,您的 URL 应该打印出任何文件吗?
标签: .htaccess redirect mod-rewrite url-rewriting friendly-url