二級域名+Nginx反向代理實現(xiàn)多個域名指向同一個公網(wǎng)ip

最近手頭上有4個項目(端口號不同,express部署的所以端口不能一樣,否則會提示端口被占用)要部署到服務(wù)器上。使用公網(wǎng)ip地址的方式這4個項目都能在瀏覽器運行,不過不容易記住,因此要將公網(wǎng)ip地址換成域名的方式訪問。于是就采取了二級域名+nginx反向代理的方式實現(xiàn)了功能。使用這種nginx的這種轉(zhuǎn)發(fā)方式,也可以避免跨域的問題。

1.配置二級域名

  • 阿里云服務(wù)器上,創(chuàng)建4個類型為A記錄的二級域名


    image.png
image.png
  • ubuntu上創(chuàng)建目錄
cd /var/www/
mkdir blog
mkdir book
mkdir ten
mkdir vue
image.png
  • 映射
sudo vim /etc/hosts  
127.0.0.1       blog.520byte.com
127.0.0.1       ten.520byte.com
127.0.0.1       vue.520byte.com
127.0.0.1       book.520byte.com

image.png
  • 配置
cd /etc/apache2/sites-available/
sudo cp /etc/apache2/sites-available/000-default.conf  book.520byte.conf
sudo cp /etc/apache2/sites-available/000-default.conf  vue.520byte.conf
sudo cp /etc/apache2/sites-available/000-default.conf  blog.520byte.conf
sudo cp /etc/apache2/sites-available/000-default.conf  ten.520byte.conf

image.png

然后,book.520byte.conf文件改成如下,vue.520byte.conf和blog.520byte.conf和 ten.520byte.conf對照著改即可

<VirtualHost *:80>
    ServerName www.book.520byte.com
    ServerAlias www.book.520byte.com
    DocumentRoot /var/www/book/ 
    <Directory /var/www/book/>
        Options FollowSymLinks
        AllowOverride None
        Require all granted
    </Directory>
    ServerAdmin webmaster@localhost
</VirtualHost>
  • 執(zhí)行a2ensite命令
sudo a2ensite book.520byte.conf
sudo a2ensite vue.520byte.conf
sudo a2ensite blog.520byte.conf
sudo a2ensite ten.520byte.conf
  • 重啟,1次不行,多重啟幾次
sudo service apache2 restart 

2.配置nginx反向代理

vim /etc/nginx/nginx.conf

添加如下內(nèi)容

server {
        listen       80;
        server_name   book.520byte.com;
        location / {     
                proxy_pass  http://149.129.100.132:3000;
        }     
    }
    server {
        listen       80;
        server_name   vue.520byte.com;
        location / {     
                proxy_pass  http://149.129.100.132:88;
        }     
    }
    server {
        listen       80;
        server_name   ten.520byte.com;
        location / {     
                proxy_pass  http://149.129.100.132:3003;
        }     
    }
    server {
        listen       80;
        server_name   blog.520byte.com;
        location / {     
                proxy_pass  http://149.129.100.132:83;
        }     
    }
  • 保存執(zhí)行如下兩個命令
sudo nginx -t
sudo nginx -s reload
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容