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 的各類配置而煩惱了!!