1、安裝工具包
yum install -y wget 下載工具
yum install -y vim-enhanced vim編輯器
yum install -y make cmake gcc gcc-c++ 編譯源代碼
2、安裝依賴包
yum install -y pcre pcre-devel
yum install -y zlib zlib-devel
yum install -y openssl openssl-devel
3、下載地址:http://nginx.org/download
# wget http://nginx.org/download/×××
4、解壓壓縮包之后進行configure配置
# ./configure --perfix=/usr/local/nginx
5、編譯安裝
make install
6、啟動nginx:# /usr/local/nginx/sbin/nginx
關閉nginx:#/usr/local/nginx/sbin/nginx -s stop
重啟nginx:#/usr/local/nginx/sbin/nginx -s reload
7、開啟防火牆80端口
firewall -cmd --zone=publice -- add-port=80/tcp -- permanent
firewall -cmd --reload
8、檢查nginx安裝成功
ps aux|grep nginx
網頁輸入ip查看結果
9、nginx配置 # vi /usr/local/nginx/conf/nginx.con
以下為需要配置的代碼段
server {
listen 80; #監聽端口
server_name localhost; #監聽域名
#上傳文件通常需要設置nginx報文大小限制;避免出現413 請求實體太大
client_max_body_size 1024M;
# 如果沒有location更明確的匹配訪問路徑的話,訪問請求都會被該location處理。
location / {
#root指定nginx的根目錄為/usr/local/nginx/html
root html;
# 默認訪問文件,歡迎頁先去html目錄下找index.html,如果找不到再去找index.htm
index index.html index.htm;}
10、nginx的主要用途
[1]反向代理
反向代理(Reverse Proxy)方式是指以代理服務器來接受 internet上 的連接請求,然后將請求轉發給內部網絡上的服務器,並將從服務器上得到的結果返回給 internet 上請求連接的客戶端,此時代理服務器對外就表現為一個反向代理服務器。
server {
listen 80;
server_name localhost;
location /gcisp-web/ {
proxy_pass http://10.153.130.47:5050/gcisp/;
proxy_connect_timeout 75s;
}
location /gcisp/ {
proxy_pass http://10.148.16.95:8080/gcisp/;
proxy_connect_timeout 5s;
#proxy_read_timeout 20s;}}
or
location / {
root html;
index index.html index.htm;}
location /tssp-map/ {
alias /usr/local/linkcm/dist/;}
location /tssp-warn/ {
proxy_pass http://192.168.2.41:8083/tssp-warn/;
proxy_set_header Host $host:$server_port;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;}
[2] 負載均衡
負載均衡也是 Nginx 常用的一個功能,負載均衡其意思就是分攤到多個操作單元上進行執行。
(1)每個請求按訪問ip的hash結果分配,這樣每個訪客固定訪問一個后端服務器,可以解決session的問題。
upstream server {
ip_hash;
server localhost:8080;
server localhost:8081;}
server {
listen 80;
server_name localhost;
location / {
proxy_pass http://test;
proxy_set_header Host $host:$server_port;}}
(2)fair(第三方)
按后端服務器的響應時間來分配請求,響應時間短的優先分配。
upstream server{
server localhost:8080;
server localhost:8081;
fair;}
[3]文件映射
映射服務器的文件資源
server {
listen 81;
server_name localhost;
location /contract/{
alias /home/gcisp/contract/;
expires 10d;
autoindex on;
index index.html index.htm;}}
[4]HTTP服務器
Nginx也是一個靜態資源的服務器,當只有靜態資源的時候,就可以使用Nginx來做服務器,同時也可以動靜分離。
(1) 靜態資源
server {
listen 80;
server_name localhost;
location / {
root c:\root;
index index.html;}}
# 訪問到c盤root目錄下面的index.html
(2) 動靜分離
動靜分離是讓動態網站里的動態網頁根據一定規則把不變的資源和經常變的資源區分開來,動靜資源做好了拆分以后,我們就可以根據靜態資源的特點將其做緩存操作。
upstream server{
server localhost:8080;
server localhost:8081; }
server {
listen 80;
server_name localhost;
location / {
root c:\root;
index index.html; }
# 所有靜態請求都由nginx處理,存放目錄為html
location ~ \.(gif|jpg|jpeg|png|bmp|swf|css|js)$ {
root c:\root;
}
# 所有動態請求都轉發給tomcat處理
location ~ \.(jsp|do)$ {
proxy_pass http://test;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root c:\root; }}
[5] 正向代理
一個位於客戶端和原始服務器(origin server)之間的服務器,為了從原始服務器取得內容,客戶端向代理發送一個請求並指定目標(原始服務器),然后代理向原始服務器轉交請求並將獲得的內容返回給客戶端。resolver是配置正向代理的DNS服務器,listen 是正向代理的端口
resolver 114.114.114.114 8.8.8.8;
server {
resolver_timeout 5s;
listen 80;
location / {
proxy_pass http://$host$request_uri;}}
11、nginx配置響應時間(常用)
proxy_connect_timeout 75s; 鏈接
proxy_read_timeout 75s; 讀取
proxy_send_timeout 75s; 發請求
12、附錄nginx.conf詳細配置:https://blog.csdn.net/tjcyjd/article/details/50695922