标签: 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 下的配置概述

  1. 我们只需要更改位于 /etc/nginx/sites-enabled/ 的 default 文件,首先对其进行备份 sudo cp /etc/nginx/sites-enabled/default /etc/nginx/sites-enabled/default.backup
  2. 修改配置文件 /etc/nginx/sites-enabled/default,可以直接使用 vi 编辑器,也可以使用 Visual Studio Code 的 Remote Explorer 功能,远程打开位于服务器上的文件,特别方便
  3. 参照以下代码进行修改
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;
}
}
  1. 验证配置是否正确:sudo nginx -t,如果没有报错,则重启 Nginx 服务:sudo service nginx restart

Nginx 在 Windows 10 下的配置

  1. 在此处下载:https://nginx.org/en/download.html
  2. 安装
  3. 备份配置文件,其位于 Nginx 根目录下的 conf 文件夹内,例如 D:\Others\nginx-1.14.2\conf\nginx.conf
  4. 申请 SSL 证书,并将证书文件和私钥文件放到 D:\Others\nginx-1.14.2\conf\ 文件夹内
  5. 对配置文件进行如下修改
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 文件放到这个文件夹内
}
}
}
  1. 测试配置文件的正确性,在终端中打开 Nginx 的根目录,执行 ./nginx -T,无误后启动 Nginx:start nginx
  2. 常用命令
start nginx # 启动 nginx
nginx -s quit # 终止 nginx
nginx -s reload # 重启 nginx
nginx -v # 查看版本
  1. 将 Nginx 配置为一项服务,这样它将开机自动启动,参考此处

原文链接:https://iamazing.cn/article/Nginx-安装与配置教程

Nginx 安装与配置教程的更多相关文章

  1. Linux中Nginx安装与配置详解

    转载自:http://www.linuxidc.com/Linux/2016-08/134110.htm Linux中Nginx安装与配置详解(CentOS-6.5:nginx-1.5.0). 1 N ...

  2. Termux 高级终端安装使用配置教程

    Termux 高级终端安装使用配置教程,这篇文章拖了有小半年.因为网上相关的文章相对来说还是比较少的,恰好今天又刷了机,所以就特意来总结一下,希望本文可以帮助到其他的小伙伴.发挥Android平台更大 ...

  3. 阿里云服务器Linux CentOS安装配置(八)nginx安装、配置、域名绑定

    阿里云服务器Linux CentOS安装配置(八)nginx安装.配置.域名绑定 1.安装nginx yum -y install nginx 2.启动nginx service nginx star ...

  4. ubuntu server nginx 安装与配置

    ubuntu server nginx 安装与配置 一:关于nginx http://wiki.ubuntu.org.cn/Nginx http://nginx.org/cn http://wiki. ...

  5. Tomcat7安装及配置教程

    Apache  Tomcat7.0安装及配置教程.. Apache  Tomcat7.0官方网站链接:http://tomcat.apache.org/ apache-tomcat-7.0.73-wi ...

  6. Tomcat8安装及配置教程

    Apache  Tomcat8.0安装及配置教程.. Apache  Tomcat8.0官方网站链接:http://tomcat.apache.org/ apache-tomcat-8.0.39-wi ...

  7. Mysql免安装版配置教程和常用命令图

    Mysql免安装版配置教程 图文版 配置环境变量 新建一个my.ini文件,添加下面内容 [mysqld] basedir=C:\\software\Mysql\mysql-5.7.14-winx64 ...

  8. Nginx安装及配置详解【转】

    nginx概述 nginx是一款自由的.开源的.高性能的HTTP服务器和反向代理服务器:同时也是一个IMAP.POP3.SMTP代理服务器:nginx可以作为一个HTTP服务器进行网站的发布处理,另外 ...

  9. [转帖]Nginx安装及配置详解 From https://www.cnblogs.com/zhouxinfei/p/7862285.html

    Nginx安装及配置详解   nginx概述 nginx是一款自由的.开源的.高性能的HTTP服务器和反向代理服务器:同时也是一个IMAP.POP3.SMTP代理服务器:nginx可以作为一个HTTP ...

随机推荐

  1. Android FART脱壳机流程分析

    本文首发于安全客 链接:https://www.anquanke.com/post/id/219094 0x1 前言 在Android平台上,程序员编写的Java代码最终将被编译成字节码在Androi ...

  2. PHP判断字符串所属编码:ASCII、GB2312、GBK、UTF-8、ISO-8859-1

    ASCII: ASCII的编码范围为0-127(十六进制:0x00-0x7F),判断函数: function isasciistr($str){ for($i=0;$i<strlen($str) ...

  3. 【php安全】eavl函数禁用适用于 php7.* php5系列

    php5.4 安装扩展demo php安装suhosin扩展 php版本与suhosin版本: suhosin-0.9.38 支持到php 5.4 php5.4 5.5 5.6 需安装 https:/ ...

  4. mysql 8.0忘记root密码

    1.修改参数文件添加以下内容 skip-grant-tables 2.关闭数据库 [root@node01 ~]# /etc/init.d/mysqld8 stop Shutting down MyS ...

  5. C# 海量数据瞬间插入到数据库的方法

    C# 海量数据瞬间插入到数据库的方法 当我们在数据库中进行大量的数据追加时,是不是经常因为数据量过大而苦恼呢?而所谓的海量数据,一般也是上万级的数据,比如我们要添加一百万条数据,应该如何提高它的效率呢 ...

  6. 一文带你彻底了解大数据处理引擎Flink内存管理

    摘要: Flink是jvm之上的大数据处理引擎. Flink是jvm之上的大数据处理引擎,jvm存在java对象存储密度低.full gc时消耗性能,gc存在stw的问题,同时omm时会影响稳定性.同 ...

  7. python菜鸟教程学习13:文件操作

    读和写文件 open() 将会返回一个 file 对象 open(filename, mode) 不同模式打开文件的完全列表:https://www.runoob.com/python3/python ...

  8. 你真的了解Python自动化吗?这篇文章可以让你了解90%

    人们为什么使用Python? 之所以选择Python的主要因素有以下几个方面: 软件质量:在很大程度上,Python更注重可读性.一致性和软件质量,从而与脚本语言世界中的其他工具区别开发.此外,Pyt ...

  9. Ubuntu虚拟机无网络连接的问题

    记录一下: 通过dhcp动态分配ip地址. sudo dhclient -v 应该就能解决了.

  10. [.NET] - OleDb读取CSV文件:使用指定的分隔符号

    今天在用OleDb方式读取一个CSV文件的时候,发现得到的文本不是通常用逗号隔开的.而是用Tab制表符来隔开的. OrderID OrderName 1 1 2 2 3 3 然后去MSND查询了了下发 ...