Nginx是一个具有负载平衡和反向代理功能的轻量级Web服务器。安装准备nginx的部分模块需要依赖lib库,所以先安装lib库,执行以下命令:[root@localhostlocal]#yum-yinstallgcc-c++pcrepcre-develzlibzlib-developensslopenssl-devel官网下载安装包安装解压文件:tar-zxvfnginx-1.20.2.tar.gz解压后进入nginx目录:cdnginx-1.20.2默认配置模块:./configure需要的添加https配置模块:./configure--prefix=/usr/local/nginx--with-http_ssl_modulecompilemakeinstallmakeinstall[路径,默认安装在usr/local路径下]start,close#start/usr/local/nginx/sbin/nginx-c/usr/local/nginx/conf/nginx.conf#重启/usr/local/nginx/sbin/nginx-sreload#关闭/usr/local/nginx/sbin/nginx-sstopEvery启动或重启服务时,需要输入一大串路径,为了简化操作,配置systemctl服务。配置systemctl服务在/usr/lib/systemd/system下创建nginx.service文件:vim/usr/lib/systemd/system/nginx.service添加配置内容:[Unit]Description=nginxAfter=network.target[Service]Type=forkingExecStart=/usr/local/nginx/sbin/nginx-c/usr/local/nginx/conf/nginx.confExecReload=/usr/local/nginx/sbin/nginx-sreloadExecStop=/usr/local/nginx/sbin/nginx-squitPrivateTmp=true[Install]配置systemctl后的启动方式#查询状态systemctlstatusnginx#启动systemctlstartnginx#重启systemctlrestartnginx#关闭systemctlstopnginx#设置开机启动systemctlenablenginx启动nginx,访问http://127.0.0.1,出现如下页面说明nginx启动成功:configure修改conf/nginx.conf配置文件。在server模块下找到80端口。修改server_name后面的域名,我这里改成了www.jeremy7.cn。location/下添加proxy_pass反向代理:proxy_passhttp://wwwtomcat;对应添加一个upstream模块,添加转发路径:upstreamwwwtomcat{server127.0.0.1:8080;}server{listen80;server_namewww.jeremy7.cn;#charsetkoi8-r;#access_log日志/host.access.logmain;位置/{proxy_passhttp://wwwtomcat;根HTML;indexindex.htmlindex.htm;}}配置https开启443端口server{listen443ssl;#配置HTTPS的默认访问端口为443#如果这里没有配置HTTPS的默认访问端口,可能会导致Nginx启动失败。#如果你使用Nginx1.15.0及以上版本,请使用listen443ssl而不是listen443andsslon。server_nameyourdomain.com;#需要将yourdomain.com替换为证书绑定的域名。根HTML;indexindex.htmlindex.htm;ssl_certificate证书/证书文件名.pem;#需要将cert-file-name.pem替换为上传的证书文件名。ssl_certificate_key证书/证书文件名.key;#需要将cert-file-name.key替换为上传的证书密钥文件的名称。ssl_session_timeout5m;ssl_ciphersECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;#表示使用的密码套件类型。ssl_protocolsTLSv1TLSv1.1TLSv1.2;#表示使用的TLS协议类型。ssl_prefer_server_ciphers开启;位置/{根html;#网站目录。indexindex.htmlindex.htm;}}server_name改为自己应用的域名ssl_certificate,替换为后缀为.pem的证书文件ssl_certificate_key,替换为后缀为.key的证书文件。:proxy_passhttp://wwwtomcat;测试配置是否正确:/usr/local/nginx/sbin/nginx-thttp强制httpsserver模块添加配置rewrite^(.*)$https://$host$1permanent;#将http转https
