一文搞懂Nginx: 域名配置、SSL、HTTP转HTTPS

本文将在Centos系统下详解Nginx服务器,从概念、下载、安装、编译、配置(含域名和证书)到启动。本文先讲Nginx如何使用,然后再谈概念。

一、实践

1. 下载
  • 下载通常有2种方式:Centos自带的包管理工具、源码编译安装(推荐,拓展性强),本文使用源码编译安装的形式下载
  • 从Nginx官网(nginx.org)下载Nginx的源代码。亦可以使用wget命令或者浏览器下载后通过FTP等方式传输到服务器上
    wget http://nginx.org/download/nginx-latest.tar.gz
    tar zxvf nginx-latest.tar.gz
    cd nginx-x.y.z  # 替换为下载的版本号
    
  • 解压后的目录主要组成如下(如果下载的是nginx-1.24.2.tar.gz,解压后将得到一个名为nginx-1.24.2的目录):
    • auto/:包含配置脚本和检测脚本,用于在编译之前自动检测系统的配置和已安装的库。

    • conf/:包含Nginx的默认配置文件模板,如nginx.conf和koi-utf、koi-win、mime.types等文件。

    • contrib/:包含一些可选的补丁和工具,用于增强Nginx的功能。

    • html/:包含Nginx默认的HTML页面,如index.html和50x.html错误页面。

    • man/:包含Nginx的man手册页,提供Nginx命令和配置的详细文档。

    • src/:包含Nginx的源代码文件,这是编译Nginx时最核心的部分。

    • configure:一个脚本,用于配置Nginx的编译选项。运行此脚本后,它会检查你的系统环境,并创建一个Makefile文件,该文件包含了编译Nginx所需的命令和选项。

  • 插一点课外知识:wget和yum(centos中最常用的包管理工具,还有RPM、DNF、APT等)
    • 功能:wget主要用于下载文件,而yum则用于软件包管理。

    • 使用场景:wget适用于需要下载文件或网页内容的场景;yum则适用于需要安装、更新或删除软件包的场景。

    • 依赖关系:wget下载文件时不涉及依赖关系问题;yum在安装软件包时会自动处理依赖关系。

    • 协议支持:wget支持HTTP、HTTPS和FTP协议;yum主要用于处理RPM包,但背后的软件源可能支持多种协议来下载软件包。

2. 安装依赖项
  • 根据你的Linux发行版,安装Nginx编译所需的依赖项。例如,在基于Debian的系统上,你可以使用apt-get;在基于Red Hat的系统上,使用yum或dnf。

    # Debian/Ubuntu
    sudo apt-get update
    sudo apt-get install build-essential libpcre3 libpcre3-dev zlib1g-dev libssl-dev
    
    # CentOS/RHEL
    sudo yum install gcc pcre-devel zlib-devel openssl-devel
    
  • 依赖项介绍

    • GCC(GNU Compiler Collection)
      • 作用:GCC是GNU项目的编译器套件,nginx的源码是用C语言编写的,因此需要GCC来编译这些源码。
      • 安装命令:在CentOS中,可以使用yum包管理器来安装GCC。命令如下:
        yum install -y gcc gcc-c++
        
    • PCRE(Perl Compatible Regular Expressions)
      • 作用:PCRE是一个Per
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值