nginx配置简介
一、安装
部署环境:centos 7.2
1.离线安装:
Nginx下载地址:http://nginx.org/en/download.html
下载稳定版本nginx-1.16.0.tar.gz到/usr/local下进行解压安装:
# ./configure --prefix=/usr/local/nginx-1.16.0 --with-pcre \ # make && make install
2.yum在线安装:
# vi /etc/yum.repo.d/nginx.repo [nginx] name=nginx repo baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ gpgcheck=0 enabled=1 #yum install nginx
搞定,也可以yum install nginx-1.16.0安装指定版本
(需要先登录http://nginx.org/en/download.html确认稳定版本的存在)
二、启动关闭nginx
1.检查配置文件是否正确
# /usr/sbin/nginx -V 查看编译选项
2.启动、关闭
# service nginx {start|stop|status|restart|reload|configtest}
三、nginx.conf配置文件
Nginx配置文件主要分成四部分:main(全局设置)、server(主机设置)、upstream(上游服务器设置,主要为反向代理、负载均衡相关配置)和 location(URL匹配特定位置后的设置),每部分包含若干个指令。main部分设置的指令将影响其它所有部分的设置;server部分的指令主要用于指定虚拟主机域名、IP和端口;upstream的指令用于设置一系列的后端服务器,设置反向代理及后端服务器的负载均衡;location部分用于匹配网页位置(比如,根目录“/”,“/images”,等等)。他们之间的关系式:server继承main,location继承server;upstream既不会继承指令也不会被继承。它有自己的特殊指令,不需要在其他地方的应用。
user nginx; worker_processes auto; error_log /var/log/nginx/error.log; pid /run/nginx.pid; include /usr/share/nginx/modules/*.conf; events { worker_connections 1024; } http { log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log main; sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 65; types_hash_max_size 2048; include /etc/nginx/mime.types; default_type application/octet-stream; # 设定负载均衡后台服务器列表 upstream backserver { server 192.168.10.10:80 max_fails=2 fail_timeout=30s ; server 192.168.10.11:80 max_fails=2 fail_timeout=30s ; } #配置http负载均衡+反向代理服务 server { listen 8080 default_server; server_name test80; charset utf-8; access_log /var/log/nginx/access-test.log main; location / { proxy_pass http://backserver; proxy_redirect off; client_max_body_size 100m; #设置client body限制,不设置时代理可能默认丢弃上传文件连接,并在error.log中报错 } } server { listen 1234 ssl; server_name test1234; ssl_certificate /etc/nginx/server.crt; ssl_certificate_key /etc/nginx/server.key; ssl_session_cache shared:SSL:1m; ssl_session_timeout 5m; ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on; location / { proxy_pass https://192.168.10.3:443/; } } }
参考:https://www.cnblogs.com/bluestorm/p/4574688.html