您还未登录! 登录 | 注册 | 帮助  

您的位置: 首页 > 软件开发专栏 > 系统/运维 > 正文

强大!Nginx配置在线一键生成“神器”

发表于:2019-10-11 作者:民工哥技术之路 来源:segmentfault

Nginx作为一个轻量级的HTTP服务器,相比Apache优势也是比较明显的,在性能上它占用资源少,能支持更高更多的并发连接,从而达到提高访问效率;在功能上它是一款非常优秀的代理服务器与负载均衡服务器;在安装配置上它安装,配置都比较简单。


关于Nginx部署、配置的文章公众号已经发布过很多:

深度总结|深入浅出Nginx

HTTP服务器Nginx服务介绍续

Nginx优化配置详解

1分钟搞定 Nginx 版本的平滑升级与回滚

指南:提高Nginx服务器硬度的12个技巧

大流量、高负载场景 Nginx+Linux 性能调优

利用ELK分析Nginx日志生产实战(高清多图)

文章很多,就不再逐一列举了,有兴趣的、需要的可以去公众号通过检索功能查找相关的文章。

对于Nginx一些配置的详细解释,之前也写过相关的文章:

Nginx优化配置详解

但在实际的生产配置环境中,肯定会经常遇到需要修改、或者重新增加Nginx配置的问题,有的时候需求更是多种多样,修修改改经常会出现这样、那样的一些错误,特别的烦索。

基于以上的原因,肯定很多读者伙伴经常会收集一些配置文档、或者电脑里也保存着一些自己日常的常用配置案例,但是终究还是不是很便利。今天,民工哥给大家介绍一款「超级牛掰的神器」,可以在线一键生成Nginx的配置。


网址:https://nginxconfig.io/

NGINX Config 支持 HTTP、HTTPS、PHP、Python、Node.js、WordPress、Drupal、缓存、逆向代理、日志等各种配置选项。在线生成 Web 服务器 Nginx 配置文件。

操作配置也非常简单,你需要做的只需要2步:

  •  打开官方网站
  •  按需求配置相关参数

系统就会自动生成特定的配置文件。虽然界面是英文的,但是功能的页面做的非常直观,生成的Nginx格式规范。

登陆之后大概的界面如下:


案例展示

配置域名:mingongge.com 实现用户访问*.mingongge.com 域名时会自动跳转到 mingongge.com 此配置,并且开启http强制跳转到https的配置。



这时,Nginx的配置就会实时自动生成在下面,我把生成的配置复制过来,如下:


  1. /etc/nginx/sites-available/mingongge.com.conf  
  2. #文件名都给你按规则配置好了 
  3. server {  
  4. listen 443 ssl http2;  
  5. server_name mingongge.com;  
  6. # SSL  
  7. ssl_certificate /etc/letsencrypt/live/mingongge.com/fullchain.pem;  
  8. ssl_certificate_key /etc/letsencrypt/live/mingongge.com/privkey.pem;  
  9. ssl_trusted_certificate /etc/letsencrypt/live/mingongge.com/chain.pem;  
  10. # security  
  11. include nginxconfig.io/security.conf;  
  12. # additional config  
  13. include nginxconfig.io/general.conf;  
  14. }  
  15. # subdomains redirect  
  16. server {  
  17. listen 443 ssl http2;  
  18. server_name *.mingongge.com;  
  19. # SSL  
  20. ssl_certificate /etc/letsencrypt/live/mingongge.com/fullchain.pem;  
  21. ssl_certificate_key /etc/letsencrypt/live/mingongge.com/privkey.pem;  
  22. ssl_trusted_certificate /etc/letsencrypt/live/mingongge.com/chain.pem;  
  23. return 301 https://mingongge.com$request_uri;  
  24. }  
  25. # HTTP redirect  
  26. server {  
  27. listen 80;  
  28. server_name .mingongge.com;  
  29. include nginxconfig.io/letsencrypt.conf;  
  30. location / {  
  31. return 301 https://mingongge.com$request_uri;  
  32. }  


非常的方便与快速。

官方还提供一些Nginx的基础优化配置,如下:


  1. /etc/nginx/nginx.conf  
  2. # Generated by nginxconfig.io  
  3. user www-data;  
  4. pid /run/nginx.pid;  
  5. worker_processes auto;  
  6. worker_rlimit_nofile 65535;  
  7. events {  
  8. multi_accept on;  
  9. worker_connections 65535;  
  10. }  
  11. http {  
  12. charset utf-8;  
  13. sendfile on;  
  14. tcp_nopush on;  
  15. tcp_nodelay on;  
  16. server_tokens off;  
  17. log_not_found off;  
  18. types_hash_max_size 2048;  
  19. client_max_body_size 16M;  
  20. # MIME  
  21. include mime.types;  
  22. default_type application/octet-stream;  
  23. # logging  
  24. access_log /var/log/nginx/access.log;  
  25. error_log /var/log/nginx/error.log warn;  
  26. # load configs  
  27. include /etc/nginx/conf.d/*.conf;  
  28. include /etc/nginx/sites-enabled/*;  
  29. } 


还有基于安全的配置,如下:


  1. /etc/nginx/nginxconfig.io/security.conf  
  2. # security headers  
  3. add_header X-Frame-Options "SAMEORIGIN" always;  
  4. add_header X-XSS-Protection "1; mode=block" always;  
  5. add_header X-Content-Type-Options "nosniff" always;  
  6. add_header Referrer-Policy "no-referrer-when-downgrade" always;  
  7. add_header Content-Security-Policy "default-src * data: 'unsafe-eval' 'unsafe-inline'" always;  
  8. # . files  
  9. location ~ /\.(?!well-known) {  
  10. deny all;  
  11. } 


都相当于是提供一些基础的模板配置,可以根据自己的实际需求去修改。

有了这个神器在手,再也不用为配置Nginx的各类配置而烦恼了!!民工哥也不敢私藏这么好的神器在手里,今天给大家分享一下,感觉有帮助的读者朋友们记得转发分享出去哦,感谢支持!!!