2016-05-12 96 views
2

试图在StackOverflow中搜索很多,但没有解决我的问题。重定向而不更改显示的URL

我在服务器中获得了一个域(我们称之为mydomain.com)和一个名为mydomain.com/subdomain的子域。我将DNS配置为重定向,所以当我写www.subdomain.com时,它会将我带到www.mydomain.com/subdomain。

有没有一种方法(通过DNS,CNAME,.htaccess,别的?)来执行我的重定向,但让我的浏览器仍然在URL栏中显示www.subdomain.com?

对不起,我的英文不好

+0

你可以使用[ProxyPass](https://httpd.apache.org/docs/current/mod/mod_proxy.html#proxypass),al你可以用[mod_rewrite P标志](https://httpd.apache.org/docs/current/rewrite/flags.html#flag_p)来做,但是由于性能方面的原因,建议使用proxypass。 –

+0

您的问题存在错误。在诸如subdomain.example.com/subdirectory/的URL中,子域是“子域”,子目录是“子目录”(有时也称为文件夹)。如果你还不清楚看到这个https://www.mattcutts.com/blog/seo-glossary-url-definitions/ 从https://www.mattcutts.com/blog/subdomains-and-subdirectories/ – javidazac

回答

1

将下面的代码在根.htaccess文件:

RewriteEngine on 
RewriteCond %{HTTP_HOST} ^(www.)?mydomain.com$ 
RewriteCond %{HTTP_HOST} !^www\. [NC] 
RewriteCond %{REQUEST_URI} !^/subdomain/ 
RewriteRule ^(.*)$ /subdomain/$1 [L,NE] 

更新:按javidazac评论,我应该解释一下,要提问,他表示子目录不子域,但我会认为你有子目录称为子域

+0

谢谢您的回答。但它没有工作。它似乎实际上什么都没做!我真的不知道我在哪里弄错... –

+0

你把这个代码放在哪里?在哪个目录中? –