1.8 万 Star!这款 Nginx 可视化配置工具太强了!

开发
还是手工配置 Nginx ?来试试这款强大的 Nginx 配置文件生成器。

简介

Nginx Config 是一个强大的 Nginx 配置文件生成器,号称配置 Nginx 服务器所需的唯一工具。

图片

Nginx 是每一个开发人员都必须掌握的强大工具,它不仅仅是一个 webserver,更包含了很多其他强大的功能:

  • 内存使用率低
  • 支持高并发
  • 异步事件驱动架构
  • 负载均衡
  • 反向代理
  • 带缓存的  FastCGI 支持(PHP)
  • 静态文件的快速处理
  • TSL/SSL

正因为 Nginx 功能强大,所以针对其各个功能的配置项会显得特别多,对于我们来说要记住那么多配置是一件十分头疼的事,甚至会经常出现符号书写错误的情况。而 Nginx Config 正是提供了简单配置 Nginx 的方法,通过可视化页面,针对 Nginx 的各个配置项提供了简洁明了的配置方法。

Nginx Config 支持以下功能的可视化配置:HTTPS、HTTP/2、IPv6、certbot、HSTS、安全请求头、SSL 配置、OCSP 解析器、缓存、gzip、brotli、回退路由、反向代理、www/non-www 重定向、CDN、PHP(TCP/socket、 WordPress、Drupal、Magento、Joomla)、Node.js、Python (Django) 服务器等。

项目地址:

https://github.com/digitalocean/nginxconfig.io​

安装使用

安装

Nginx Config 提供了官方在线网站,可以直接使用官方网站进行配置即可,也可以自行部署 Nginx Config 的服务。

  1. clone 远程仓库:
git clone https://github.com/digitalocean/nginxconfig.io.git
  1. 安装依赖包
npm ci
  1. 开发环境版本部署
npm run dev
  1. 打开 localhost:8080
  2. 检查代码(eslint 和 stylelint)
npm test
  1. 构建生产环境版本
npm run build

简单使用

生成 只需要到网站上找到你想到配置的项目,手动勾选或填写配置内容,即可实时生成并在线查看生成的配置

图片

  1. 下载 下载生成的 nginxconfig.io-example.com.tar.gz 文件,然后上传到服务器的 /etc/nginx 目录,执行以下命令:
cd /etc/nginx
tar -czvf nginx_$(date +'%F_%H-%M-%S').tar.gz nginx.conf sites-available/ sites-enabled/ nginxconfig.io/
tar -xzvf nginxconfig.io-example.com.tar.gz | xargs chmod 0644
  1. 复制压缩配置的 base64 字符串,粘贴到服务器执行。

图片

  1. ssl 初始化
// 生成 Diffie-Hellman 密钥:
openssl dhparam -out /etc/nginx/dhparam.pem 2048
// 创建目录用于配置加密证书(Let's Encrypt)
mkdir -p /var/www/_letsencrypt
chown www-data /var/www/_letsencrypt
  1. certbot
// 注释掉配置中的SSL相关指令:
sed -i -r 's/(listen .*443)/\1; #/g; s/(ssl_(certificate|certificate_key|trusted_certificate) )/#;#\1/g; s/(server \{)/\1\n ssl off;/g' /etc/nginx/sites-available/example.com.conf
// 重新加载NGINX服务器:
sudo nginx -t && sudo systemctl reload nginx
// 使用Certbot从 Let's Encrypt 获得SSL证书:
certbot certonly --webroot -d example.com --email info@example.com -w /var/www/_letsencrypt -n --agree-tos --force-renewal
// 在配置中取消注释SSL相关指令:
sed -i -r -z 's/#?; ?#//g; s/(server \{)\n ssl off;/\1/g' /etc/nginx/sites-available/example.com.conf
// 重新加载NGINX服务器:
sudo nginx -t && sudo systemctl reload nginx
// 配置Certbot,当NGINX成功更新证书时重新加载:
echo -e '#!/bin/bash\nnginx -t && systemctl reload nginx' | sudo tee /etc/letsencrypt/renewal-hooks/post/nginx-reload.sh
sudo chmod a+x /etc/letsencrypt/renewal-hooks/post/nginx-reload.sh
  1. 完成上线
// 重新加载NGINX载入新的配置:
sudo nginx -t && sudo systemctl reload nginx

责任编辑:张燕妮 来源: 开源前哨
相关推荐

2023-03-06 08:03:10

Python可视化工具

2022-05-05 07:01:09

可视化代码执行工具

2020-02-25 14:38:05

代码开发工具

2022-05-30 16:31:08

CSS

2020-03-11 14:39:26

数据可视化地图可视化地理信息

2021-02-21 08:11:46

PythonDash工具

2022-05-16 08:57:36

Python可视化代码

2021-03-04 09:31:42

开源技术 项目

2021-02-07 20:23:09

GoogeBlockly可视化编程

2022-03-03 13:02:37

可视化网页低代码编程工具

2018-05-31 08:25:13

误区工具可视化

2022-08-26 09:15:58

Python可视化plotly

2017-10-14 13:54:26

数据可视化数据信息可视化

2009-04-21 14:26:41

可视化监控IT管理摩卡

2023-12-10 20:33:50

Redis搜索全文

2020-10-12 18:08:19

JVM技能工具

2018-09-26 16:15:31

数据可视化大数据数据分析

2017-04-19 08:32:50

大数据数据可视化编程工具

2020-10-13 17:10:24

GithubRedis数据库

2021-04-14 16:20:39

可视化大数据工具
点赞
收藏

51CTO技术栈公众号