我在我的网络主机上设置了一个子域名,如下所示:
en.domain.com pointing to the folder /en/
但是当在地址栏中输入“en.domain.com”时,URL会变为
domain.com/en/
如果我进一步导航,让我们对文件夹“aaa”说,URL变为
domain.com/en/aaa/
有没有办法让子域名保留在地址栏中,如下所示?:
en.domain.com/aaa/
答案 0 :(得分:4)
我尝试了一切,没有人可以帮助我。经过大量的研究,我找到了这个,它对我有用。所以这是我自己的答案,这可能有助于其他人寻找同样的事情。
这将使显示子域(“en.domain.com”)的URL在地址栏中不会更改,即使有人输入“domain.com/en/”,它也会将URL重写为“en .domain.com“:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^domain\.com$
RewriteRule ^en(/(.*))? http://en.domain.com/$2 [QSA,L,R=301]
这会破坏您网站的路径,导致不会显示样式和图片。因此,您需要根据网站结构中每个网页的位置,将其放在网站每个页面的HTML代码中:
对于“en”文件夹中的页面:
<head>
<base href="http://domain.com/en/" />
</head>
对于文件夹“aaa”中的页面:
<head>
<base href="http://domain.com/en/aaa/" />
</head>
对于“bbb”文件夹中的页面:
<head>
<base href="http://domain.com/en/aaa/bbb/" />
</head>
欢迎你! : - )