Nginx 安装与配置教程
标签: Nginx Linux Windows 配置
描述: Ubuntu 下以及 Windows 下 Nginx 的配置;配置详解;有关 Nginx 如何配置
Nginx 在 Ubuntu 下的安装
sudo apt-get update
sudo apt-get install nginx
如果遇到依赖问题,尝试执行 sudo apt-get -f install 命令进行修复
SSL 证书申请
我们需要为我们的域名以及子域名分别申请 SSL 证书,如过你用的是腾讯云服务器,可以点击此处进行申请,此处申请的免费 SSL 证书为单域名 SSL 证书,也就是说其只能用于一个域名,该域名下的子域名无法使用此证书,需另外申请。
申请完之后,等待申请通过,之后下载证书文件,解压缩,把里面对应于 Nginx 证书文件和私钥文件通过 scp 或者其他工具传到服务器的 /etc/nginx/ 目录
Nginx 在 Ubuntu 16.04 下的配置概述
- 我们只需要更改位于
/etc/nginx/sites-enabled/的 default 文件,首先对其进行备份sudo cp /etc/nginx/sites-enabled/default /etc/nginx/sites-enabled/default.backup - 修改配置文件
/etc/nginx/sites-enabled/default,可以直接使用 vi 编辑器,也可以使用 Visual Studio Code 的 Remote Explorer 功能,远程打开位于服务器上的文件,特别方便 - 参照以下代码进行修改
server { # 配置 http 自动跳转 https
listen 80;
server_name _;
return 301 https://$host$request_uri;
}
server {
listen 443;
server_name iamazing.cn; # 你的域名
ssl on;
ssl_certificate 1_iamazing.cn_bundle.crt; # 对于此域名的证书文件
ssl_certificate_key 2_iamazing.cn.key; # 对于此域名的的私钥
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://localhost:3000; # 监听的地址
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
location /public {
root /var/www/html;
}
}
server {
listen 443;
server_name bookmark.iamazing.cn; # 你的子域名
ssl on;
ssl_certificate 1_bookmark.iamazing.cn_bundle.crt; # 对于此域名的证书文件
ssl_certificate_key 2_bookmark.iamazing.cn.key; # 对于此域名的的私钥
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://localhost:4000; # 监听的地址
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
- 验证配置是否正确:
sudo nginx -t,如果没有报错,则重启 Nginx 服务:sudo service nginx restart
Nginx 在 Windows 10 下的配置
- 在此处下载:https://nginx.org/en/download.html
- 安装
- 备份配置文件,其位于 Nginx 根目录下的 conf 文件夹内,例如
D:\Others\nginx-1.14.2\conf\nginx.conf - 申请 SSL 证书,并将证书文件和私钥文件放到
D:\Others\nginx-1.14.2\conf\文件夹内 - 对配置文件进行如下修改
worker_processes 1;
events {
worker_connections 1024;
}
http {
client_max_body_size 200M;
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
gzip on;
server { # 配置 http 自动跳转 https
listen 80;
server_name _;
return 301 https://$host$request_uri;
}
server {
listen 443;
server_name i.iamazing.cn localhost;
ssl on;
ssl_certificate 1_i.iamazing.cn_bundle.crt; # 对于此域名的证书文件
ssl_certificate_key 2_i.iamazing.cn.key; # 对于此域名的的私钥
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;
location / {
root d:/project/public; # 可以将一些 HTML 文件放到这个文件夹内
}
}
}
- 测试配置文件的正确性,在终端中打开 Nginx 的根目录,执行
./nginx -T,无误后启动 Nginx:start nginx - 常用命令
start nginx # 启动 nginx
nginx -s quit # 终止 nginx
nginx -s reload # 重启 nginx
nginx -v # 查看版本
- 将 Nginx 配置为一项服务,这样它将开机自动启动,参考此处
原文链接:https://iamazing.cn/article/Nginx-安装与配置教程
Nginx 安装与配置教程的更多相关文章
- Linux中Nginx安装与配置详解
转载自:http://www.linuxidc.com/Linux/2016-08/134110.htm Linux中Nginx安装与配置详解(CentOS-6.5:nginx-1.5.0). 1 N ...
- Termux 高级终端安装使用配置教程
Termux 高级终端安装使用配置教程,这篇文章拖了有小半年.因为网上相关的文章相对来说还是比较少的,恰好今天又刷了机,所以就特意来总结一下,希望本文可以帮助到其他的小伙伴.发挥Android平台更大 ...
- 阿里云服务器Linux CentOS安装配置(八)nginx安装、配置、域名绑定
阿里云服务器Linux CentOS安装配置(八)nginx安装.配置.域名绑定 1.安装nginx yum -y install nginx 2.启动nginx service nginx star ...
- ubuntu server nginx 安装与配置
ubuntu server nginx 安装与配置 一:关于nginx http://wiki.ubuntu.org.cn/Nginx http://nginx.org/cn http://wiki. ...
- Tomcat7安装及配置教程
Apache Tomcat7.0安装及配置教程.. Apache Tomcat7.0官方网站链接:http://tomcat.apache.org/ apache-tomcat-7.0.73-wi ...
- Tomcat8安装及配置教程
Apache Tomcat8.0安装及配置教程.. Apache Tomcat8.0官方网站链接:http://tomcat.apache.org/ apache-tomcat-8.0.39-wi ...
- Mysql免安装版配置教程和常用命令图
Mysql免安装版配置教程 图文版 配置环境变量 新建一个my.ini文件,添加下面内容 [mysqld] basedir=C:\\software\Mysql\mysql-5.7.14-winx64 ...
- Nginx安装及配置详解【转】
nginx概述 nginx是一款自由的.开源的.高性能的HTTP服务器和反向代理服务器:同时也是一个IMAP.POP3.SMTP代理服务器:nginx可以作为一个HTTP服务器进行网站的发布处理,另外 ...
- [转帖]Nginx安装及配置详解 From https://www.cnblogs.com/zhouxinfei/p/7862285.html
Nginx安装及配置详解 nginx概述 nginx是一款自由的.开源的.高性能的HTTP服务器和反向代理服务器:同时也是一个IMAP.POP3.SMTP代理服务器:nginx可以作为一个HTTP ...
随机推荐
- git clone 速度太慢解决方法
本来想下载一个翻墙软件,实在是忍受不了每秒十几K的龟速,查阅各种资料,终于找到了失传已久的秘籍 先附图,实测有效,这速度简直要上天了啊啊啊啊啊(只支持HTTPS方式,SSH无效) 方案:使用githu ...
- Vue开发中的移动端适配(px转换成vw)
1.项目根目录下,创建 .postcssrc.js 文件. 2.安装插件. -D (开发依赖) postcss-import postcss-url cssnano-preset-advanced - ...
- STL—— 容器(vector)begin() 与 rbegin() , end() 与 rend()
1. Vector 迭代器首地址与尾地址 begin() 和 end() 在代码中可以将迭代器用作参数的位置可以使用 begin() 和 end() 获取地址,如下代码: 1 #include &l ...
- 安卓实用工具箱v4.3几百种小功能
款多功能实用工具箱.提供了从日常.图片.查询.设备.辅助.提取.优惠券.趣味游戏等多方面的功能,操作简单,即点即用,避免您下载超多应用的难题,且应用体积轻巧,界面简洁.已去除广告! 下载地址:http ...
- 突破JAVA万人面试,懂多线程者得天下
突破JAVA万人面试,懂多线程者得天下 在面试中,求职者会遇到很多棘手的问题,其中关于"线程安全"."线程同步"."线程死锁"等方面的面 ...
- 二、利用Git将GitHub上的项目拉下项目
本地同样需要安装Git,同样在GitHub上加入ssh公共钥匙 如果忘了 去看上一篇 一.本地项目部署到GitHub上 - 中华田园猫饭饭 - 博客园 (cnblogs.com) 1-鼠标右键点击 G ...
- 自顶向下redis4.0(3)命令与dict
redis4.0的命令 简介 目录 redis4.0的命令 简介 正文 redisCommand与redisCommandTable 初始化命令 执行命令 set指令与字典 参考文献 正文 redis ...
- [日常摸鱼]bzoj1083[SCOI2005]繁忙的都市-最小生成树
我也不知道为什么我要来写这个-怕是写水题写上瘾了(bu #include<cstdio> #include<algorithm> #define rep(i,n) for(re ...
- 302跳转导致的url劫持
介绍一个 网站监测工具:iis7网站监测IIS7网站监控工具可以做到提前预防各类网站劫持,并且是免费在线查询,适用于各大站长,政府网站,学校,公司,医院等网站.它可以做到24小时定时监控,同时它可 ...
- 利用设计模式消除业务代码中的 if-else
准备工作:假设这样的一个业务场景:有一个自动开票的功能需要实现,在程序里面需要根据账单的类型执行对应的处理逻辑. 以下使用了 Lombok 简化代码!!! 账单类型枚举: /** * @author ...