2012-04-16 91 views
2

如何编写一个基于htaccess的重定向基于URL

http://mysite.com/http://google.com -> http://google.com 

http://mysite.com/http://facebook.com -> http://facebook.com 

htaccess的规则应该与302重定向到该网址(除主index.php文件),因此实际的引荐将被隐藏, 谢谢您。

回答

1

将这个代码在你的.htaccess下DOCUMENT_ROOT:

Options +FollowSymLinks -MultiViews 
# Turn mod_rewrite on 
RewriteEngine On 
RewriteBase/

RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+(https?://[^\s]+) [NC] 
RewriteRule^%1 [R,L] 
+0

这一工程很好,但如何实现没有http://的重定向?非常感谢! – 2012-04-16 22:28:33

+0

将RewriteCond更改为:'RewriteCond%{THE_REQUEST}^[AZ] {3,} \ s/+((?:https?://)?[^ \ s] +)[NC]' – anubhava 2012-04-17 04:41:22

+0

嗨,但它显示推荐人,如何隐藏它?示例http://vladvipstar.ru/http://www.stardrifter.org/cgi-bin/ref.cgi,谢谢 – 2012-04-17 08:09:57

0

如果我让你所有的链接将与协议开始的假设,然后下面的工作: -

RewriteEngine On 
RewriteBase/

RewriteRule ^(https?)://(.*)$  $1://$2 [NC,L,R=302]