nginx的安装与配置

前言

nginx是高性能的http服务器,轻量,简单,高效率。工作中处处离不开它,可用来做反向代理,负载均衡,动静分离,高可用集群等等。具体学习还得自己亲自去实验,必定收获盆满钵满。

一、nginx的下载

nginx提供linux与windows的版本下载,根据自己的需求,下载对应环境的压缩包即可。这里我下载linux版本的压缩包,版本为nginx-1.20.2。nginx官网下载地址:http://nginx.org/en/download.html
在这里插入图片描述

二、nginx的安装

1.安装环境

CentOS Linux release 8.5.2111

2.解压与安装

可在windows中使用Xftp远程连接服务器将下载下来的压缩包传输到linux服务器下,这里我默认放在/root目录下。
在这里插入图片描述

(1)解压

执行解压命令

tar -zxvf nginx-1.20.2.tar.gz

得到nginx安装目录
在这里插入图片描述

(2)安装的nginx的先决条件,linux需要安装如下软件

  1. GCC——GNU编译器集合

RedHat中安装GCC

yum install gcc

Ubuntu中安装GCC

apt-get install gcc
  1. PCRE库

RedHat中安装PCRE

yum install pcre pcre-devel

Ubuntu中安装PCRE

apt-get install libpcre3 libpcre3-dev
  1. zlib库

RedHat中安装zlib

yum install zlib zlib-devel

Ubuntu中安装zlib

apt-get install zlib1g zlib1g-dev
  1. OpenSSL

RedHat中安装OpenSSL

yum install openssl openssl-devel

Ubuntu中安装OpenSSL

apt-get install openssl openssl-dev

(3) 执行./configure文件

进入nginx-1.20.2目录,执行./configure文件

在这里插入图片描述

(4)make

执行完configure文件后,输入make命令回车。

(5)make install

执行完make命令后,输入make install命令回车。

三、nginx的启动

如果第二步解压与安装都没有错的话,nginx应该安装成功了。可以执行whereis命令查找安装在哪个目录,默认安装在/usr/local/nginx目录下。
在这里插入图片描述
cd到/usr/local/nginx目录,ls列出文件与目录,进入sbin目录,执行nginx文件即可启动nginx。
在这里插入图片描述
浏览器访问自己的服务器的外网IP地址,nginx默认是80端口,显示Welcome to nginx!证明安装完成。

在这里插入图片描述
如无法访问请检查防火墙是不是还没放开的80端口。

四、nginx常用命令

  • 查看版本
    nginx -V
  • 启动
    nginx -s start
  • 重启
    nginx -s reload
  • 停止
    nginx -s stop

五、安装http_ssl_module模块

如果想用nginx配置https访问,就需要安装http_ssl_module模块。

(1)重新执行configure文件

进入源码包,也就是解压之后的那个nginx-1.20.2目录,执行如下命令。

./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module

如果没有安装成功,可能需要下面的依赖包。

yum -y install pcre-devel openssl openssl-devel

(2)make

输入make命令,回车。
注意:输入make命令之后请不要输入make install命令,否则就覆盖安装了

(3)备份原有的nginx

cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx_bak

(4)停止当前nginx服务

在这里插入图片描述

(4)覆盖掉原有的nginx

cp ./objs/nginx /usr/local/nginx/sbin/

(5)查看安装情况

/usr/local/nginx/sbin/nginx -V
nginx version: nginx/1.20.2
built by gcc 8.5.0 20210514 (Red Hat 8.5.0-4) (GCC) 
built with OpenSSL 1.1.1k  FIPS 25 Mar 2021
TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module

六、nginx配置https

(1)证书准备

准备好nginx的SSL证书,一个.pem文件,一个.key文件。

(2)修改nginx.conf配置文件

进入/usr/local/nginx/conf目录,编辑nginx.conf文件。

  • 监听443端口,开启ssl
   # HTTPS server
    server {
        listen       443 ssl;
        server_name  test.com;

        ssl_certificate        ./cert/test.com.pem;
		ssl_certificate_key    ./cert/test.com.key;

        ssl_session_cache    shared:SSL:1m;
        ssl_session_timeout  5m;

        ssl_ciphers  HIGH:!aNULL:!MD5;
        ssl_prefer_server_ciphers  on;

        location / {
            root   html;
            index  index.html index.htm;
        }
    }
  • 重定向http,实现强制https访问
# HTTP server
server {
	listen       80;
    server_name  test.com;
    rewrite ^(.*) https://$server_name$1 permanent; // 重定向
	
	#charset koi8-r;
    #access_log  logs/host.access.log  main;
    
    location / {
        root   html;
        index  index.html index.htm;
   }
}

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码
< <上一篇
下一篇>>