将域指向具有相同 url 的子域文件夹

Point domain to subdomain folder with same url

我有一个域名

http://www.example.biz/

我开发了一个站点并将代码放在这个域的子文件夹中,例如,该站点位于

http://www.example.biz/site

现在,我想将我的主域指向这个文件夹,这样当用户访问 example.biz 时,他实际上看到了 example.biz/site,为此,我在 .htaccess[=18 中添加了以下行=]

RedirectMatch ^/$ /site/

它工作得很好,但是 url 用户看到的是

http://www.example.biz/site

我不想这样,我希望用户只看到 http://www.example.biz 为 URL,但是这个域应该不可见地指向子文件夹。我应该怎么做?

使用 mod_rewrite 您可以使用以下规则,现在当您访问 http://www.example.biz 时,它将显示来自 site/.

的索引文件
RewriteEngine On
RewriteRule ^$ /site/ [L]

或者,如果您想显示每个文件,请尝试以下操作,

RewriteEngine On
RewriteRule ^(/|.+)$ site/ [L]

我找到了一个更简单的解决方案,

RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^ http://%1%{REQUEST_URI} [NE,R=301,L]
RewriteCond %{HTTP_HOST} ^(www\.)?example\.biz$
RewriteRule !^site/ /site%{REQUEST_URI}  [L]