使用HTACCESS基于变量重定向到url

时间:2013-02-15 22:27:09

标签: php .htaccess redirect social-networking

我想制作一项服务,允许用户获得直接链接,以执行跟随或订阅等操作(不明白原因)。

所以使用htaccess或php(无论哪种更好),我该怎么做呢 example.com/insertusernamehere自动重定向到somepopularsocialmediasite.com/?follow_user=blahblahblah

请务必注意,example.com网站与somepopularsocialmediasite.com位于不同的服务器上。

另外我想要一些.html页面,包括index.html,about.html等等,所以我需要一种方法来排除某些查询/文件的重定向。

2 个答案:

答案 0 :(得分:0)

我假设您可以以某种方式将用户名存储在变量中,因此我们可以这样做:

$current_url = "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
$username = 'some_username_you_get_somehow';
$url_username = substr(strrchr($current_url, '/'), 1);

if ($url_username == $username)
{
    header("Location: http://somepopularsocialmediasite.com/?follow_user={$username}/");
}

答案 1 :(得分:0)

如果您服务器上存在的所有网页(index.html等)都具有.html扩展名,您只需执行以下操作:

RewriteRule ^([a-zA-Z0-9]+)$ http://socialsite.com/?follow_user=$1 [R=301, L]

基本上,该规则与包含扩展名的任何内容都不匹配,因为它只查找不区分大小写的字母和数字。如果你愿意,你甚至可以把连字符放在那里。