Nginx小白配置教程

本文围绕Nginx展开,介绍了安装最新稳定版本的方法,包括卸载旧版本、添加官方源、执行安装指令等步骤;说明了配置站点上线的大致流程,如建目录、新建配置文件、加载配置等;还提及配置中遇到Nginx 403错误的解决办法,最后提到为站点配置HTTPS待续。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录:

  • 安装最新稳定版本
  • 配置站点上线
  • 为站点配置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/

### 如何在Linux系统上安装Nginx的新手教程 #### 准备工作 确保系统的包管理器是最新的,并且已经安装了必要的开发工具。对于基于RPM的发行版,如CentOS或Red Hat,可以通过以下命令更新系统并安装基本编译环境[^2]: ```bash sudo yum update -y sudo yum groupinstall "Development Tools" -y ``` #### 安装依赖项 为了让Nginx正常运行以及支持更多的功能模块,在正式安装之前还需要额外安装一些库文件。这些操作同样适用于大多数主流Linux版本: ```bash sudo yum install gcc openssl-devel pcre-devel zlib-devel -y ``` #### 下载与解压Nginx源码包 前往[Nginx官方网站](https://nginx.org/en/download.html),下载稳定版的tar.gz格式压缩包到本地计算机后再上传至服务器端指定目录内;或者直接通过wget命令在线获取最新版本(此处以1.21.3为例): ```bash cd /usr/local/src/ wget http://nginx.org/download/nginx-1.21.3.tar.gz tar zxvf nginx-1.21.3.tar.gz ``` #### 编译配置选项设置 进入刚刚解压出来的文件夹路径下执行`./configure`脚本来设定具体的参数值。这里给出了一组较为通用的选择方案供参考: ```bash cd nginx-1.21.3 ./configure \ --prefix=/usr/local/nginx \ --with-http_ssl_module \ --with-stream \ --with-mail \ --with-pcre-jit \ --without-select_module \ --without-poll_module ``` #### 执行make指令完成构建过程 当上述准备工作完成后就可以开始真正的编译流程了。此步骤可能会花费几分钟时间,请耐心等待直至结束。 ```bash make && make install ``` #### 启动服务测试访问情况 如果一切顺利的话现在应该可以在浏览器地址栏输入http://your_server_ip/看到默认欢迎页面啦!当然在此之前别忘了先启动它哦~ ```bash /usr/local/nginx/sbin/nginx ``` 为了方便日后管理和维护建议将Nginx加入开机自启项目列表里去,同时也可以创建相应的systemd service单元文件以便更灵活地控制其状态变化。 最后一步就是按照个人需求调整环境变量PATH中的内容,使得可以直接调用nginx命令而无需每次都指明绝对路径[^5]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值