Nginx小白配置教程

目录:

  • 安装最新稳定版本
  • 配置站点上线
  • 为站点配置HTTPS

过程中应该注意的问题

  1. 安装Nginx完成后你应该执行以下命令来启动Nginx服务:

      sudo systemctl start nginx
    

    成功启动的话,不会有任何Nginx相关信息输出。

  2. 修改Nginx配置后,可通过执行nginx -s reload命令进行重载,更多相关请转到本文配置站点上线第四部分加载配置

  3. 配置站点上线后,若发现访问域名得到的页面却是 **Nginx 403 ** 错误页面,你可以试着查看Nginx的错误日志,我遇到最常见的引发此错误的原因是Nginx配置中的用户权限不够,说白了就是Nginx配置文件(nginx.conf)中的用户权限和站点目录用户权限不一致。

    为了检查是否为这个问题,你可以试着在站点目录下执行ll(两个小写的L)命令,查看文件用户,在我的服务器上站点目录用户为root,于是我将Nginx默认用户也修改为root,并重载配置文件,至此站点已经可以正常访问。

    具体修改方法:修改/etc/nginx/nginx.conf文件中第一行user后参数为root(根据你的目录所有者修改)。

安装最新稳定版本

我当前服务器系统版本号为Ubuntu16.04,默认源安装的Nginx版本是v1.10.0,有消息指出v1.15.6之前版本存在多个安全问题,所以赶紧来将其升级至最新稳定版本。

  1. 卸载旧版本

    v1.14.0版本前后目录存在差异,建议执行sudo apt-get --purge remove nginx将已经安装的旧版本Ngxin的配置文件和程序全都卸载,当然,你可以选择备份sites-available文件夹下的配置文件。

  2. 安装新版本

    1. Nginx版本介绍

      先了解一下Nginx各个版本,官网地址http://nginx.org/en/download.html

      页面中有以下版本:

      • Mainline version:正在开发阶段的版本,可能会有漏洞。
      • Stable version:稳定版
      • Legacy versions: 历史版本
    2. Nginx升级/安装步骤

      以安装最新v1.16.0稳定版为例。

      1. 执行下列命令以添加Nginx官方源

        sudo wget http://nginx.org/keys/nginx_signing.key
        sudo apt-key add nginx_signing.key
        
      2. /etc/apt/sources.list文件末加入下面两行内容

        deb http://nginx.org/packages/ubuntu/ xenial nginx
        deb-src http://nginx.org/packages/ubuntu/ xenial nginx
        

        注:上面两行内容中xenial是Ubuntu系统代号,各大版本代号不同:

        VersionCode
        16.04xenial
        18.04bionic
        18.10cosmic
        19.04disco

        更多参见:http://nginx.org/en/linux_packages.html#stable

      3. 执行安装指令

        以上步骤 1 & 2 完成了Nginx官方源的添加,接下来执行常规安装就好。

        sudo apt update
        sudo apt install nginx
        
      4. 检查版本

        nginx -v
        

        此时显示的版本应该是nginx version: nginx/1.16.0

        大功告成。

注:重新安装后你应该执行以下命令来启动Nginx服务:

sudo systemctl start nginx

成功启动的话,不会有任何Nginx相关信息输出。

参考博文:Ubuntu升级或安装Nginx最新稳定版

配置站点上线

不得不赞叹,Nginx简直就是神器,强大的反向代理以及负载均衡工具,其只需要监控80口,便可以根据配置文件上线大量站点(多个站点不同域名均解析至同一服务器IP,Nginx根据配置文件为不同域名返回其对应的站点内容),实现单服务器单IP单端口配置大量站点!并且其基础功能配置简单,极易上手。

大致步骤:

  1. 在服务器建好目录用于存放你的站点文件(这里的测试用例均为静态页面,若为JSP或者PHP站点需要先搭建其他环境,再配合Nginx)

  2. /etc/nginx/conf.d(这是Nginx默认安装目录下的站点配置目录)下新建站点配置文件,命名格式为domain.conf

    注:

    • 个人建议配置文件命名格式为domain.conf,为不同域名建立不同的配置文件,方便管理。
    • 若你还在使用旧版本Nginx,其也是有此目录的,配置文件完全可以放在此目录下,sites-available文件夹不管问题不大。
  3. 配置文件写法

    下面是我的静态站点配置文件(/etc/nginx/conf.d/3ders.conf)内容:

    server{
        listen 80; # 监听80口
        server_name 3ders.xyz; # 站点域名
        root /root/www/3ders.xyz/; # 站点目录
        index index.html; # 站点默认首页
    }
    

    没有过多要求的话,这么写就行了。

  4. 加载配置

    执行nginx -s reload加载刚刚改好的配置,这是热重载,不同担心其他已经在运行的站点受本次配置更新受影响而无法正常访问。

    并且就算是配置文件有误,执行完命令会提示具体错误,并且Nginx仍会按照上一次正确的配置运行,不会down掉。

    若还不放心,可以先执行nginx -t命令测试配置文件,若是配置无误则会提示以下信息:

    nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
    nginx: configuration file /etc/nginx/nginx.conf test is successful
    

至此,你的站点已经可以成功通过域名访问了。

你可以试着访问我的样例网站3ders.xyz

差点忘记说了,你应该记得将你的域名解析至服务器IP,并且完成上述步骤后,才算是大功告成。

为站点配置HTTPS

待续……

全文源地址:https://xn–gmq34dr7k6kal2c.xn–6qq986b3xl/2019/05/23/%E5%88%9D%E6%B6%89nginx/

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值