CentOS7服务器如何搭建NGINX
短信预约 -IT技能 免费直播动态提醒
小编给大家分享一下CentOS7服务器如何搭建NGINX,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
nginx的yum源安装文档:http://nginx.org/en/linux_packages.html
安装方式
创建yum源文件
vim /etc/yum.repos.d/nginx.repo
增加以下内容
[nginx]name=nginx repobaseurl=http://nginx.org/packages/centos/7/$basearch/gpgcheck=0enabled=1
执行命令:
yum install nginxsystemctl start nginxsystemctl enable nginx
配置文件
修改配置文件
vim /etc/nginx/nginx.conf
增加并发量
# 总并发量为worker_processes*worker_connections。如果使用反向代理,则一个请求消耗两个连接(连接客户端一个,连接后端tomcat一个)。# 一般与cpu核数一致,如1个cpu、每个cpu有个4核心,则设置为4;2cpu、每个cpu有个4核心,则设置为8。worker_processes 1;events { worker_connections 20480;}http { ... # 原有配置无需改动,增加下面的配置 ... # 同级代理不需要redirect。如根目录代理至根目录。 proxy_redirect off; # 解决获取访问域名的问题。否则该方法无法获取请求访问的域名:request.getServerName(); proxy_set_header Host $host; # 解决获取访问者IP地址的问题。 proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; # 解决 WebSocket Proxy 问题。nginx文档:https://www.nginx.com/blog/websocket-nginx/ proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "Upgrade"; # 请求体最大尺寸,主要是上传文件。默认1M client_max_body_size 4000m; # 请求体缓存,超过缓存值就写入临时文件。默认16k client_body_buffer_size 128k; # 开启ssi ssi on; ssi_types text/shtml; # 开启gzip gzip on; # 启用压缩的最小文件指,默认20。太小的文件有可能越压缩越大,设置为1000比较合适。 gzip_min_length 1000; # 压缩级别,1-9,越大压缩的越小,但也越慢且越费CPU。默认1。设置为2一般足够了,追求更高的压缩率可以设置为5,再高意义不大。 gzip_comp_level 2; # 作为代理时,无条件开启gzip。 gzip_proxied any; #gzip_proxied expired no-cache no-store private auth; # 任何类型都进行压缩,避免一个个设置,容易遗漏。 gzip_types *;}
整合tomcat
创建配置文件。在/etc/nginx/conf.d/目录下所有.conf结尾的文件都会被自动加载。
vim /etc/nginx/conf.d/jspxcms.conf
配置文件内容如下:
server { listen 80; server_name www.jspxcms.com; root /data/tomcat/jspxcms/webapps/ROOT; index index.html index.htm index.shtml; location / { # 如果uri地址对应文件或目录不存在,则使用代理转发到tomcat # try_files $uri $uri/index.html $uri/index.htm @proxypass; # 查找目录可以利用nginx将文件重定向至目录,如访问 /foo,目录存在的话,会重定向至 /foo/ try_files $uri $uri/ @proxypass; } # 如使用 try_files $uri $uri/ @proxypass; 则必须加上这项,否则可能出现首页无法访问的情况 location = / { try_files /index.html @proxypass; } location @proxypass { # 代理至tomcat,tomcat需监听10001端口 proxy_pass http://localhost:10001; } # 禁止访问/WEB-INF/目录下文件 location /WEB-INF/ { deny all; }}# 将jspxcms.com重定向至www.jspxcms.comserver { listen 80; server_name jspxcms.com; rewrite ^/(.*) http://www.jspxcms.com/$1 permanent;}
如没有使用restful,只代理特定的url后缀,可以使用以下配置:
server { listen 80; server_name www.jspxcms.com jspxcms.com; if ($host = 'jspxcms.com' ) { rewrite ^/(.*)$ http://www.jspxcms.com/$1 permanent; } location ~ \.?(jsp|jspx|do|servlet)?(\;jsessionid=.*)?$ { proxy_pass http://localhost:10001; } location / { root /home/jspxcms/webapps/ROOT; index index.html index.shtml index.jspx index.do; } location /WEB-INF/ { deny all; }}
看完了这篇文章,相信你对“CentOS7服务器如何搭建NGINX”有了一定的了解,如果想了解更多相关知识,欢迎关注编程网行业资讯频道,感谢各位的阅读!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341