1. 程式人生 > >centos上nginx的一些使用(關於反向代理)

centos上nginx的一些使用(關於反向代理)

今天將靜態頁面部和api部署到伺服器,所以用到了nginx

第一步:準備工作

1.1、安裝gcc: yum install gcc-c++

1.2 、安裝PCRE pcre-devel: yum install -y pcre pcre-devel

1.3 、安裝zlib: yum install -y zlib zlib-devel

1.4、安裝OpenSSL: yum install -y openssl openssl-devel

第二步:安裝

   我是從官網下載的nginx壓縮包,然後用rz上傳到指定目錄

2.1  cd /web/webserver

2.2  rz  上傳

2.3 mv nginx-version nginx

2.4 cd nginx

2.5 ./configure  –prefix=/web/webserver/nginx將安裝目錄設定在當前目錄(預設目錄為/usr/local)

2.6 make install

第三步:使用

如果出現佔用  killall -9 nginx

進入/nginx/sbin  輸入 ./nginx -c /web/webserver/nginx/conf/nginx.conf指定啟動

檢測配置是否正常 ./nginx -t

重啟  ./nginx -s reload

第四步:配置

在nginx.conf的http模組裡面 輸入 include conf.d/*引入conf.d資料夾下的所有配置

配置如下

^~ 通配以static起始的uri,這裡用的是root

訪問xxxx.com/static/test/index.html  實際訪問地址是/web/project +/static +/test/index.html

如果將root換位alias 相對路徑

那麼實際訪問地址是 /web/project  +/test/index.html

那個api是我開啟的一個node服務,因為我沒有設定node的二級域名

配置proxy_pass時,當在後面的url加上了/,相當於是絕對根路徑,則nginx不會把location中匹配的路徑部分代理走;如果沒有/,則會把匹配的路徑部分也給代理走

所以當api不加/ 時

我訪問  xxxx.com/api/test  實際訪問的時127.0.0.1/10001/api/test

加了/ 則是 127.0.0.1/10001/test