从URL中删除文件夹名称

时间:2014-03-16 22:28:07

标签: php apache .htaccess mod-rewrite rewrite

我有一个域名www.domain.com重定向到我的服务器中。

接下来我有index.php代码:

header("Location: http://domain.com/v3/");

当我进入mydomain.com时,我在网址中有mydomain.com/v3/。

如何从Url中删除v3

2 个答案:

答案 0 :(得分:1)

从您的PHP代码中删除header行,因为它正在执行重定向并在根.htaccess中具有这个基于前瞻的规则:

RewriteEngine On

RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+v3/([^?\s]*) [NC]
RewriteRule ^ /%1 [R=302,L,NE]

RewriteRule ^((?!v3/).*)$ /v3/$1 [L,NC]

这基本上意味着如果请求未以/v3/转发至/v3/而未在浏览器中更改网址而开始。

答案 1 :(得分:0)

如果您是从PHP重定向,可以使用parse_url进行清理。

$url = "http://domain.com/v3/";

$host = parse_url( $url, PHP_URL_HOST); 
$scheme = parse_url( $url, PHP_URL_SCHEME); 

header( $scheme . '://' . $host );