阿里雲配置 node.js + Nginx 反向代理

學如逆水行舟javascript

1.首先你得安裝node.js,我是用nvm安裝的,這樣比較好控制版本,固然你也可使用apt-getjava

2.下一步是安裝Nginx,不去管版本的話,直接sudo apt-get install nginx就行。node

3.進入/etc/nginx目錄,查看nginx.conf配置文件,在http塊中找到這樣兩句:nginx

# include /etc/nginx/conf.d/*.conf;
# include /etc/nginx/sites-enabled/*;複製代碼

看看你的這兩句有沒有註釋掉,若是註釋了就把#號去掉,沒有註釋的話就跳過這一步。瀏覽器

4.進入/etc/nginx/conf.d目錄,建立咱們本身的配置文件,去名規則最好是域名加端口,這樣之後方便找,好比個人:rockjins-com-8081.conf,配置文件寫入如下內容:安全

upstream rockjins {
    server 127.0.0.1:8081; # 這裏的端口號寫你node.js運行的端口號,也就是要代理的端口號,個人項目跑在8081端口上
    keepalive 64;
}

server {
    listen 80; #這裏的端口號是你要監聽的端口號
    server_name 39.108.55.xxx www.rockjins.com rockjins.com; # 這裏是你的服務器名稱,也就是別人訪問你服務的ip地址或域名,能夠寫多個,用空格隔開

    location / {
        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_set_header Connection "";
        proxy_pass http://rockjins; # 這裏要和最上面upstream後的應用名一致,能夠自定義
    }
}複製代碼

5.保存文件後,輸入sudo nginx -t測試咱們的配置文件是否有錯誤,通常錯誤都是漏個分號,少個字母之類的,錯誤提示很精確,沒錯的話會輸出下面兩句:服務器

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful複製代碼

6.如今咱們須要重啓Nginx,咱們的配置文件纔會生效,輸入sudo service nginx reload;ssh

7.最後一步把我坑慘了,弄了一夜,就是安全組的問題,以前有篇文章還寫到了這個問題,一轉眼就忘了。(ssh鏈接服務器 Operation timed out)測試

由於服務跑在8081端口上,可是阿里雲的安全組默認是拒絕4000端口以上的受權策略的,你們必定記得去添加安全組規則,如圖:阿里雲

8.打開瀏覽器,輸入你的IP或域名,是否是把8081端口代理到80端口上了,哈哈。

但願這篇文章可以幫到你,節省你一些不必浪費的時間,有什麼問題能夠找我,你們一塊兒進步!

本文做者:餘震(Shock)
本文出處:Rockjins Blog
版權聲明:本博客全部文章除特別聲明外,均採用 CC BY-NC-SA 3.0 CN許可協議。轉載請註明出處!

相關文章
相關標籤/搜索