Linux 下 Nginx安装与使用(2)

server { listen 80; #监听端口 server_name localhost; #如果绑定了域名 这里填写具体域名 #静态数据 location ~ .(gif|jpg|jpeg|png|bmp|swf|css|js)$ { root /data/wwwroot/webapp/html; } #动态请求 location ~ .(aspx|cshtml)$ { proxy_pass http://localhost:8080 #动态服务器站点运行地址 } }

反向代理

适合单台服务器应用程序部署,转发

server { listen 80; server_name localhost; client_max_body_size 1024M; location / { proxy_pass http://localhost:8080; #代理服务器 比如动态应用程序站点 proxy_set_header Host $host:$server_port; #请求头信息部分信息一并转发到代理服务器 } }

均衡负载

最常用的,适合多台服务器部署应用程序,对外都是同一个域名或站点访问

# 服务器列表 upstream webapp{ server 192.1681.2:8080 weight=9; #weight 权重 server 192.168.1.3:8080 weight=1; } server { listen 81; server_name localhost; client_max_body_size 1024M; location / { proxy_pass http://webapp; #代理指向服务器列表 proxy_set_header Host $host:$server_port; #获取真实客户端访问IP,原理还是将客户端和IP有关的请求头转发到应用服务器 proxy_set_header X-Real-IP $remote_addr; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }

配置Https

https需要依赖openssl包。

nginx开启SSL模块

检查自己是否有开启SSL模块

nginx –V  (大写的V)

Linux 下 Nginx安装与使用

看到有with-http_ssl_module证明已经开启

如果没有则证明没有开启;以下操作都是针对没有开启with-http_ssl_module的。

进入自己的安装目录执行:

./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module

配置完成后执行编译   

make

备份已经安装好的nginx (注意自己的安装目录)

cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak

停止正在运行的nginx

nginx -s stop

复制新编译好的nginx覆盖原有nginx

cp ./objs/nginx /usr/local/nginx/sbin/

查看是否配置成功

nginx –V  (大写的V)

Linux 下 Nginx安装与使用

修改站点配置节点

#server { listen 443 ssl; #监听端口改为443 server_name localhost; ssl_certificate cert.pem; #证书prm文件路径 ssl_certificate_key cert.key; #证书key文件路径 ssl_session_cache shared:SSL:1m; #设置会话缓存大小 ssl_session_timeout 5m; #客户端可以重用会话缓存中ssl参数的过期时间 ssl_ciphers HIGH:!aNULL:!MD5; #加密方式 ssl_prefer_server_ciphers on; #设置加密算法时,优先使用服务端的加密算法 location / { root html; index index.html index.htm; } }

配置Http2

配置Http2 Nginx 版本必须大于1.10.0以上。Openssl版本必须大于1.0.2。

在Nginx里面使用Http2必须得使用Https才行。

可以通过Nginx –V查看目前已安装的版本。

Http2需要开启with-http_v2_module模块

配置with-http_v2_module等模块然后make 然后覆盖安装等。 具体不就不再演示了和配置Https一样。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/aeba241c1711246716d21d92805e5ccb.html