成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專(zhuān)欄INFORMATION COLUMN

使用nginx來(lái)為你在一臺(tái)服務(wù)器部署多個(gè)Web Server

Muninn / 2820人閱讀

摘要:這樣就能通過(guò)不同的子域名來(lái)訪(fǎng)問(wèn)不同的應(yīng)用了大致的結(jié)構(gòu)本質(zhì)上就是負(fù)責(zé)轉(zhuǎn)發(fā)進(jìn)來(lái)的請(qǐng)求,那么轉(zhuǎn)發(fā)的依據(jù)就是判斷不同的子域名第一步當(dāng)然是安裝,各個(gè)平臺(tái)不太一樣,也沒(méi)法分享了。

最近搗鼓了不少時(shí)間,起初想到要弄這個(gè)就是因?yàn)?node 直接起 server 的方式有點(diǎn)暴力,因?yàn)檎加昧?80 端口就是真的占用了,很難在用一個(gè) 80 端口掛多個(gè) WebServer。你只能掛載在多個(gè)端口上,訪(fǎng)問(wèn)起來(lái)后面還得加個(gè)端口,太丑了,所以摸索了一下,用 Nginx 配置了一個(gè)多服務(wù)結(jié)構(gòu)。這樣就能通過(guò)不同的子域名來(lái)訪(fǎng)問(wèn)不同的應(yīng)用了!

大致的結(jié)構(gòu)

本質(zhì)上就是 nginx 負(fù)責(zé)轉(zhuǎn)發(fā)進(jìn)來(lái)的請(qǐng)求,那么轉(zhuǎn)發(fā)的依據(jù)就是判斷不同的子域名

STEP 1 Install Nginx

第一步當(dāng)然是安裝 nginx,各個(gè)平臺(tái)不太一樣,也沒(méi)法分享了。我自己的 ubuntu 的環(huán)境

apt-get isntall nginx
STEP 2 Set DNS AND PORT

去你的域名管理商那里分配你想要的子域名,當(dāng)然都是 A 記錄并全部解析到你的 VPS 公網(wǎng) IP 上.

另外一個(gè)準(zhǔn)備就是修改你所有的 NodeWebServer 的端口,可以按你的愛(ài)好設(shè)置,但是不要占用 80 以及 443 端口

STEP 3 nginx config Node.js

切換到你的nginx 配置目錄

我的目錄位置

/etc/nginx/

這里要說(shuō)明 nginx 是擁有 Include 機(jī)制的,他會(huì)自動(dòng)加載 conf.d 目錄下的所有 _.conf_(默認(rèn)配置下) ,所以我們并不需要修改 nginx.conf 文件。我們接下來(lái)需要在 conf.d 目錄下創(chuàng)建一系列的配置文件,文件名請(qǐng)使用你相應(yīng)的工程名,比如 project1.conf

如果沒(méi)有請(qǐng)手動(dòng)加入

        include /etc/nginx/conf.d/*.conf;
        # include /etc/nginx/sites-enabled/*; // 最好給他注釋了 默認(rèn)頁(yè)面沒(méi)啥用

開(kāi)始編寫(xiě)項(xiàng)目配置

cd conf.d

touch project1.conf

vim project1.conf

讓我們編寫(xiě)詳細(xì)的轉(zhuǎn)發(fā)規(guī)則

// 這是一個(gè)NODE Web Server
// 我已經(jīng)將這個(gè)服務(wù)的端口改成了8000端口
// 當(dāng)nginx捕獲到訪(fǎng)問(wèn)域名為api.yinode.tech的時(shí)候
// 就會(huì)轉(zhuǎn)發(fā)到本地的8000端口
server{
    server_name api.yinode.tech;
    listen 80;
    location / {
        # proxy_http_version 1.1;
        proxy_set_header Connection "";
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $http_host;
        proxy_set_header X-NginX-Proxy true;
        proxy_pass http://127.0.0.1:8000$request_uri;
        proxy_redirect off;
    }
}

如果你需要轉(zhuǎn)發(fā) HTTPS,請(qǐng)復(fù)制一份上面的內(nèi)容粘貼到下面,修改監(jiān)聽(tīng)端口為 443,轉(zhuǎn)發(fā)端口就是你監(jiān)聽(tīng)的 https 端口!

STEP 4 nginx config PHP

php 的轉(zhuǎn)發(fā)設(shè)置會(huì)稍有一些不同,(默認(rèn)你已經(jīng)安裝好了 PHP)

server {
  listen 80;
  root /var/www/longqiyoutian/wordpress; // 你的根目錄
  index index.php;
  server_name dragon.yinode.tech;
  error_page 404 /404.html;
  location ~ .php$ {
    try_files $uri = 404;
    fastcgi_pass unix:/var/run/php/php7.0-fpm.sock; // 你的fpm地址
    fastcgi_index index.php;
    include fastcgi_params;
    fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name; // 必須填寫(xiě),注意順序
  }
}

逐個(gè)講解,首先我們的 Root 目錄會(huì)變的重要,Nginx 將會(huì)把這個(gè)目錄轉(zhuǎn)發(fā)給 FPM 來(lái)跑 PHP 代碼,所以不要寫(xiě)錯(cuò)了,第二是后面的轉(zhuǎn)發(fā)必須加上 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;這能引導(dǎo) fpm 進(jìn)行正確的地址拼接

TIPS:提醒

nginx 和 FPM 的默認(rèn)啟動(dòng)用戶(hù)都是 www-data,所以你的網(wǎng)站根目錄請(qǐng)務(wù)必修改所屬者為 www-data,并且不要將這個(gè)目錄放置到/root/ 下,會(huì)出現(xiàn)權(quán)限問(wèn)題,最好復(fù)制到/var/www 目錄下,并設(shè)置所屬者!

STEP 5 Repeat

重復(fù) 3 4 步驟,創(chuàng)建所有你需要的項(xiàng)目配置

STEP 6 Restart nginx
service nginx restart

如果出現(xiàn)報(bào)錯(cuò),仔細(xì)查看信息,去網(wǎng)上找,一般都是因?yàn)榕渲梦募袷藉e(cuò)誤。

STEP 7 Run

打開(kāi)你的網(wǎng)站吧,應(yīng)該可以正常運(yùn)行了!以后新增 Server 其實(shí)也只要增加一個(gè)對(duì)應(yīng)的 conf 文件,可以很方便的橫向擴(kuò)展,并且整個(gè)網(wǎng)站訪(fǎng)問(wèn)起來(lái)也會(huì)比較美觀!

最后 附上我的博客地址,可以來(lái)看看

Blog

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/30779.html

相關(guān)文章

  • 使用nginx來(lái)為你在一臺(tái)務(wù)器部署多個(gè)Web Server

    摘要:這樣就能通過(guò)不同的子域名來(lái)訪(fǎng)問(wèn)不同的應(yīng)用了大致的結(jié)構(gòu)本質(zhì)上就是負(fù)責(zé)轉(zhuǎn)發(fā)進(jìn)來(lái)的請(qǐng)求,那么轉(zhuǎn)發(fā)的依據(jù)就是判斷不同的子域名第一步當(dāng)然是安裝,各個(gè)平臺(tái)不太一樣,也沒(méi)法分享了。 最近搗鼓了不少時(shí)間,起初想到要弄這個(gè)就是因?yàn)?node 直接起 server 的方式有點(diǎn)暴力,因?yàn)檎加昧?80 端口就是真的占用了,很難在用一個(gè) 80 端口掛多個(gè) WebServer。你只能掛載在多個(gè)端口上,訪(fǎng)問(wèn)起來(lái)后面...

    greatwhole 評(píng)論0 收藏0
  • 在 Ubuntu 14.04 務(wù)器部署 Hexo 博客

    摘要:本文將介紹如何在一臺(tái)的云服務(wù)器上快速部署博客站點(diǎn),如何快速發(fā)布一篇博文并通過(guò)云服務(wù)器上的私有倉(cāng)庫(kù)部署到服務(wù)器目錄下。此外,還要在云服務(wù)器上安裝和兩個(gè)必備的軟件包。在服務(wù)器上部署博客以下為文章正文。 推薦理由:Hexo 是用 Node.js 開(kāi)發(fā)的一個(gè)靜態(tài)站點(diǎn)生成器(Static Site Generator),支持 Markdown 語(yǔ)法寫(xiě)作,有著強(qiáng)大的插件系統(tǒng),而且性能優(yōu)異。下面我推...

    cyqian 評(píng)論0 收藏0
  • Python:Tornado 第四章:Tornado網(wǎng)站部署:第三節(jié):運(yùn)營(yíng)期配置

    摘要:上一篇文章第四章網(wǎng)站部署第二節(jié)靜態(tài)文件后臺(tái)運(yùn)行一般調(diào)試過(guò)程中我們使用運(yùn)行網(wǎng)站,方便我們?cè)诿钚兄锌催\(yùn)行狀況。默認(rèn)情況下,會(huì)監(jiān)控子進(jìn)程,并在任何程序意外終止時(shí)重生。配合實(shí)現(xiàn)多進(jìn)程在中添加接受命令行參數(shù)可在配置文件中添加使用代理 上一篇文章:Python:Tornado 第四章:Tornado網(wǎng)站部署:第二節(jié):靜態(tài)文件 1、后臺(tái)運(yùn)行 一般調(diào)試過(guò)程中我們使用python app.py運(yùn)行網(wǎng)...

    Donald 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<