.htaccess url使用外部站点参数重写

时间:2014-07-11 13:13:00

标签: php .htaccess mod-rewrite url-rewriting

我有一个用于重定向到外部网站的外页。 out页面使用GET来检索外部站点链接,但是当外部站点具有URL参数时,我无法使URL重写正常工作。我想更改以下内容

自: http://www.example.com/out.php?url=http://www.externalsite.com?abc=def

要: http://www.example.com/out/http://www.externalsite.com?abc=def

这是我目前的代码:

RewriteRule ^out/(.*) out.php?url=$1 [QSA,L]

这有效但在重写期间会丢失?abc = def。有没有办法在URL重写中包含这个?感谢

1 个答案:

答案 0 :(得分:0)

将此代码放入DOCUMENT_ROOT/.htaccess文件中:

RewriteEngine On

RewriteCond %{THE_REQUEST} /out/(\S+) [NC]
RewriteRule ^ /out.php?url=%1 [QSA,L,NE]

您需要在此处从%{THE_REQUEST}变量中捕获外部URI。