云服务器Linux宝塔面板一级目录反向代理

阿里云服务器

云服务器Linux宝塔面板做反向一级目录代理 实现windows系统互通(亲测,可直接用!)

有很多成熟的项目(如:APP、网站、小程序、数据库等)采用的云服务器Linux系统,可因一些原因,部分项目或其中的某个模块要放置在另一个云服务器中,实现两个服务器之间互通,而另一个服务器的系统是windows系统,该怎么办?这一篇采用实战教程的方式,教你一步一步实现windows系统和Linux两种不同系统环境的服务器之间的交互。

实战案例,网站A是是主站,要在网站A的某个目录下搭建另一个站,叫网站B,网站a.com表示,目录用/test/表示。

采用的方式:利用云服务器Linux宝塔面板中反向代理功能,把a.com的目录/test/映射到windows系统环境的云服务器的ip地址上。

第一步:测试之前我购买了两台云服务器,强烈推荐阿里云的海外云服务器

两台都可以选择香港轻量云服务器,也可以选择GPU云服务器,根据自己的经济情况选择,轻量云服务器价格比较便宜,适合个人或微型企业,GPU云服务器适合有一定实力的企业,如果看项目规模和用户规模决定。

第二步:有个前提条件网站A也就是主站已经在Linux系统环境的服务器上搭建好了,我需要把网站A目录/test/映射到windows系统环境上,换句话说打开a.com/test/其实是请求的windows环境的服务器。

第三步:打开Linux环境的服务器上的宝塔面板配置文件,打开伪静态配置文件

server
{
    listen 80;
    server_name 域名;
    index index.php index.html index.htm default.php default.htm default.html;
    root /www/wwwroot/域名;
location /waimao/{
proxy_pass http://ip地址/目录名/;
}

就这一段代码,就可以完全实现一台服务器对另一台服务器的映射,这里只是把其中linux环境一台服务器上的网站某个目录映射到windows系统环境的服务器上,从而实现同一个网站项目分割在不同系统环境下、不同服务器之间的交互,对于用户来说完全看不出。

按照以上这个规则,把刚才测试的案例对应一下,修改如下:

server
{
    listen 80;
    server_name a.com;
    index index.php index.html index.htm default.php default.htm default.html;
    root /www/wwwroot/a.com;
location /waimao/{
proxy_pass http://127.0.0.1/test/;
}

注:ip地址更换成你服务器的ip地址。

如果打开目录时出现图片变形、不显示或者和主站图片冲突,可以把宝塔面板中的伪静态配置文件css和图片设置代码注释掉。

 # location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
   # {
      #  expires      30d;
        #error_log off;
       # access_log /dev/null;
   # }
    
    # location ~ .*\.(js|css)?$
    # {
       #  expires      12h;
         #error_log off;
         #access_log /dev/null; 
    # }

以上完全实现了linux系统的服务器和windows系统的服务器交互问题。