Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/256.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如果在URL中找到查询字符串,则URL重定向_Php_.htaccess - Fatal编程技术网

Php 如果在URL中找到查询字符串,则URL重定向

Php 如果在URL中找到查询字符串,则URL重定向,php,.htaccess,Php,.htaccess,URL是当前的,这是完美的 但如果我像“”一样输入“www”,页面将重定向到 输入“”后,我希望URL为“”。这就是隐藏“www”和隐藏“.php”。有两种方法。在php页面中或使用.htaccess文件中的重写规则。以下链接将帮助您-应该是这样的: RewriteEngine on RewriteCond %{HTTP_HOST} ^www\. RewriteRule (.*) http://example.com/$1 [R=301,L] RewriteRule page/(.*) http

URL是当前的,这是完美的

但如果我像“”一样输入“www”,页面将重定向到


输入“”后,我希望URL为“”。这就是隐藏“www”和隐藏“.php”。

有两种方法。在php页面中或使用.htaccess文件中的重写规则。以下链接将帮助您-

应该是这样的:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.
RewriteRule (.*) http://example.com/$1 [R=301,L]
RewriteRule page/(.*) http://www.example.com/page.php?s=$1 [P]
使用重定向301隐藏www的第一条规则,然后应使用代理标志
[p]
加载该规则,以避免再次重定向

注意:必须启用才能使用此标志


这需要一个.htaccess重定向。您的RewriteCond技能有多好?RewriteBase/RewriteRule page/(*)page.php上的RewriteEngine?s=$1[NC,L]RewriteCond%{HTTPS}=在RewriteRule^(.*)$https://%{HTTP_HOST}%{REQUEST_URI}[L,R=301,NE]RewriteCond%{HTTP_HOST}^www\.(.+)$[NC]RewriteRule^ https://%1%{REQUEST_URI}[R=301,L]RewriteCond%{REQUEST_FILENAME}-f rewrite rule^([^\.]+$$1.php[NC,L]我也尝试过但没有工作重定向301^/page.php?s=horeca##hide.php extension#到外部重定向/dir/foo.php到/dir/foo RewriteCond%{THE(u REQUEST)^[A-Z]{3,}\s([^.]+)\.php[NC]RewriteRule^%1[R=302,L]}到内部转发/dir/foo到/RewriteCond%{php/foo请求}-d RewriteCond%{REQUEST_FILENAME}.php-f RewriteRule^(.*?/?$$1.php[L]添加到@Mukund answers中,也许您可以看看是否可以根据需要对其进行调整