WordPress企业级应用
CMS与电商商业建站技巧

通过DNS把网站子目录映射到另外一台服务器上

经常有这样的情况发生:我们有一台Root服务器,绑定了域名 abc.com,如果这时候还有若干子服务器,服务器域名需要设为 abc.com/dir1 , abc.com/dir2……..  由于子目录不在根服务器上,又需要服务器域名统一,怎么办呢?

这个功能能够通过把 子域名重定向到虚拟目录来解决。具体操作如下:

一、设置一个子域名 dir1.abc.com,指向此子服务器。

二、在子服务器上设定.htaccess,把域名重新rewrite为子目录形式:

RewriteEngine on
RewriteCond %{HTTP_HOST} dir1.abc\.com [NC]
RewriteCond %{REQUEST_URI} ^/$
RewriteRule ^(.*)$ /dir1/$1 [L]

参考: https://help.dreamhost.com/hc/en-us/articles/216109967-Redirect-your-root-directory-to-a-subdirectory

对于 Nginx 主机,则需要这么处理:

  server {
    server_name sub.domain.com;
    rewrite ^ $scheme://www.domain.com/sub$1 permanent;
  }

多级子目录:

rewrite ^(.*)$ $scheme://www.domain.com/sub$1 permanent;

return 301 $scheme://www.domain.com/sub$request_uri;

参考:https://serverfault.com/questions/867736/rewrite-redirect-subdomain-urls-to-subdirectory-urls

三、此时服务器把 dir1.abc.com 的url 重写为 abc.com/dir1/url 形式。功能实现。

 

赞(0)
未经允许不得转载:为知网 » 通过DNS把网站子目录映射到另外一台服务器上

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址