导读 | nginx作为一个轻量级的http服务器,相比apache优势也是比较明显的,在性能上它占用资源少,能支持更高更多的并发连接,从而达到提高访问效率;在功能上它是一款非常优秀的代理服务器与负载均衡服务器;在安装配置上它安装,配置都比较简单。 |
关于nginx部署、配置的文章公众号已经发布过很多:
深度总结|深入浅出nginx
http服务器nginx服务介绍续
nginx优化配置详解
1分钟搞定 nginx 版本的平滑升级与回滚
指南:提高nginx服务器硬度的12个技巧
大流量、高负载场景 nginx linux 性能调优
利用elk分析nginx日志生产实战(高清多图)
文章很多,就不再逐一列举了,有兴趣的、需要的可以去公众号通过检索功能查找相关的文章。
对于nginx一些配置的详细解释,之前也写过相关的文章:
nginx优化配置详解
但在实际的生产配置环境中,肯定会经常遇到需要修改、或者重新增加nginx配置的问题,有的时候需求更是多种多样,修修改改经常会出现这样、那样的一些错误,特别的烦索。
基于以上的原因,肯定很多读者伙伴经常会收集一些配置文档、或者电脑里也保存着一些自己日常的常用配置案例,但是终究还是不是很便利。今天,民工哥给大家介绍一款「超级牛掰的神器」,可以在线一键生成nginx的配置。
nginx config 支持 http、https、php、python、node.js、wordpress、drupal、缓存、逆向代理、日志等各种配置选项。在线生成 web 服务器 nginx 配置文件。
操作配置也非常简单,你需要做的只需要2步:
-
打开官方网站
按需求配置相关参数
系统就会自动生成特定的配置文件。虽然界面是英文的,但是功能的页面做的非常直观,生成的nginx格式规范。
登陆之后大概的界面如下:
配置域名:mingongge.com 实现用户访问*.mingongge.com 域名时会自动跳转到 mingongge.com 此配置,并且开启http强制跳转到https的配置。
这时,nginx的配置就会实时自动生成在下面,我把生成的配置复制过来,如下:
/etc/nginx/sites-available/mingongge.com.conf #文件名都给你按规则配置好了 server { listen 443 ssl http2; server_name mingongge.com; # ssl ssl_certificate /etc/letsencrypt/live/mingongge.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/mingongge.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/mingongge.com/chain.pem; # security include nginxconfig.io/security.conf; # additional config include nginxconfig.io/general.conf; } # subdomains redirect server { listen 443 ssl http2; server_name *.mingongge.com; # ssl ssl_certificate /etc/letsencrypt/live/mingongge.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/mingongge.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/mingongge.com/chain.pem; return 301 https://mingongge.com$request_uri; } # http redirect server { listen 80; server_name .mingongge.com; include nginxconfig.io/letsencrypt.conf; location / { return 301 https://mingongge.com$request_uri; } }
非常的方便与快速。
官方还提供一些nginx的基础优化配置,如下:
/etc/nginx/nginx.conf # generated by nginxconfig.io user www-data; pid /run/nginx.pid; worker_processes auto; worker_rlimit_nofile 65535; events { multi_accept on; worker_connections 65535; } http { charset utf-8; sendfile on; tcp_nopush on; tcp_nodelay on; server_tokens off; log_not_found off; types_hash_max_size 2048; client_max_body_size 16m; # mime include mime.types; default_type application/octet-stream; # logging access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log warn; # load configs include /etc/nginx/conf.d/*.conf; include /etc/nginx/sites-enabled/*; }
还有基于安全的配置,如下:
/etc/nginx/nginxconfig.io/security.conf # security headers add_header x-frame-options "sameorigin" always; add_header x-xss-protection "1; mode=block" always; add_header x-content-type-options "nosniff" always; add_header referrer-policy "no-referrer-when-downgrade" always; add_header content-security-policy "default-src * data: 'unsafe-eval' 'unsafe-inline'" always; # . files location ~ /\.(?!well-known) { deny all; }
都相当于是提供一些基础的模板配置,可以根据自己的实际需求去修改。
有了这个神器在手,再也不用为配置nginx的各类配置而烦恼了!!民工哥也不敢私藏这么好的神器在手里,今天给大家分享一下,感觉有帮助的读者朋友们记得转发分享出去哦,感谢支持!!!