301重定向apache显示错误的url
事实证明,出于不同的原因,我不得不更改我的网站URL,旧的URL在Google中被编入索引,我想让你浏览一下,新的内容将与新的URL一起显示 我补充说:301重定向apache显示错误的url,apache,.htaccess,url,mod-rewrite,Apache,.htaccess,Url,Mod Rewrite,事实证明,出于不同的原因,我不得不更改我的网站URL,旧的URL在Google中被编入索引,我想让你浏览一下,新的内容将与新的URL一起显示 我补充说: Redirect 301 /library/books/pitz-lower.php http://www.example.com/library/pitz-lower.php 但要从谷歌获取,浏览器中的url如下所示: http://www.example.com/library/pitz-lower.php?url=library/pit
Redirect 301 /library/books/pitz-lower.php http://www.example.com/library/pitz-lower.php
但要从谷歌获取,浏览器中的url如下所示:
http://www.example.com/library/pitz-lower.php?url=library/pitz-lower
htaccess
<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine On
RewriteBase /
RewriteCond %{THE_REQUEST} ^GET.*index\.php [NC]
RewriteRule (.*?)index\.php/*(.*) /$1$2 [R=301,NE,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /library/library\.php\?url=([^\s]+) [NC]
RewriteRule ^ /library/%1.php? [L,R=301]
RewriteCond %{REQUEST_URI} !^/library/library\.php
RewriteRule ^library/(.+)\.php$ /library/library.php?url=$1 [L]
</IfModule>
#r301
Redirect 301 /library/books/pitz-lower.php http://www.example.com/library/pitz-lower.php
选项+FollowSymLinks
重新启动发动机
重写基/
RewriteCond%{THE_REQUEST}^GET.*index\.php[NC]
重写规则(.*)索引\.php/*(.*)/$1$2[R=301,NE,L]
RewriteCond%{THE_REQUEST}^[A-Z]{3,9}\/library/library\.php\?url=([^\s]+)[NC]
重写规则^/library/%1.php?[L,R=301]
重写cond%{REQUEST_URI}^/library/library\.php
重写规则^library/(.+)\.php$/library/library.php?url=$1[L]
#r301
重定向301/library/books/pitz-lower.phphttp://www.example.com/library/pitz-lower.php
我不明白为什么会这样,有人帮我?谢谢 有两个问题:
mod_rewrite
规则和mod_alias
规则(即Redirect
指令)是不好的,因为这两个模块在不同的时间运行301
重定向规则Options +FollowSymLinks
RewriteEngine On
RewriteBase /
RewriteRule ^library/books/pitz-lower\.php$ /library/pitz-lower.php [L,NC,R=301]
RewriteCond %{THE_REQUEST} ^GET.*index\.php [NC]
RewriteRule (.*?)index\.php/*(.*) /$1$2 [R=301,NE,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /library/library\.php\?url=([^\s]+) [NC]
RewriteRule ^ /library/%1.php? [L,R=301]
RewriteCond %{REQUEST_URI} !^/library/library\.php
RewriteRule ^library/(.+)\.php$ /library/library.php?url=$1 [L,QSA]
请记住在测试时清除浏览器缓存。您可以显示您的完整.htaccess吗?您所说的“但要从谷歌获得”是什么意思?我编辑了这篇文章,谢谢!对不起,我说的是英语。你很大,很大,它已经完全解决了,令人印象深刻。非常感谢!!