Linux系统下Nginx安装与配置

68 篇文章 0 订阅
67 篇文章 1 订阅
本文详细介绍了如何在Linux环境中安装Nginx,并添加SSL模块以支持HTTPS。首先,你需要下载Nginx源码,然后安装必要的依赖,如gcc、zlib-devel和pcre-devel。接着,在指定目录下解压并配置源码,编译并安装Nginx。要启用SSL,需安装openssl依赖,创建SSL证书,并在Nginx配置文件中配置SSL参数。最后,启动Nginx并测试HTTPS连接。
摘要由CSDN通过智能技术生成

Nginx安装与配置

准备工作

  1. nginx官网下载最新稳定版本,如:nginx-1.20.2.tar.gz

  2. 安装gcc gcc-c++:

    yum install -y gcc gcc-c++

  3. 安装zlib-devel:

    yum install -y zlib-devel

  4. 安装pcre pcre-devel:

    yum install -y pcre pcre-devel

安装(/usr/local)

1、将源码包拷贝到 /usr/local 目录中

mv nginx-1.20.2.tar.gz /usr/local

2、解压源码

tar -zxvf nginx-1.20.2.tar.gz

3、进入源码目录,进行配置

cd nginx-1.20.2

./configure

4、编译、安装

make

make install

检查安装情况

进入安装目录 /usr/local/nginx/sbin 目录下:

cd /usr/local/nginx/sbin

./nginx

通过访问 http://domain.com 看看能否正常访问,或者检查nginx进程:

ps aux|grep nginx
或者
ps -ef|grep nginx

Nginx 控制命令

./sbin/nginx              # 启动nginx
./sbin/nginx -s reload    # 重载
./sbin/nginx -s stop      # 关闭(强制)
./sbin/nginx -s quit      # 优雅关闭(等请求处理完后关闭)

配置SSL

0、准备工作

  1. 停止nginx,

  2. 安装openssl依赖:

    yum install -y openssl openssl-devel

  3. 准备Nginx的SSL证书文件:cert.pem和cert.key

1、重新配置加入SSL模块

进入源码目录,加入SSL支持模块:

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

2、重新编译

make

3、覆盖原来编译的版本

将刚编译的nginx程序拷贝到原来安装的sbin目录中覆盖即可

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

4、配置SSL

  1. 打开nginx.conf配置文件:

    vim /usr/local/nginx/conf/nginx.conf

  2. 修改如下配置:

    …………

    server {
    listen 443 ssl; # 监听443 SSL端口
    server_name www.domain.com;

      # SSL 证书、协议、算法等配置
      ssl_certificate           ../ssl/cert.pem;
      ssl_certificate_key       ../ssl/cert.key;
      ssl_protocols             TLSv1   TLSv1.1   TLSv1.2;
      ssl_ciphers               ECDHE-RSA-AES256-SHA384:AES256-SHA256:RC4:HIGH:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!AESGCM;
      ssl_prefer_server_ciphers on;
      ssl_session_cache         shared:SSL:10m;
      ssl_session_timeout       10m;
      
      …………
    }
    
  3. 访问 https://www.domain.com 查看

  4. 将 80 端口转发到 443 端口以使用https

    server {
    listen 80;
    server_name www.domain.com;

    # 核心代码:80端口所有地址都转发到 https
    rewrite       ^(.*)$ https://${server_name}$1 permanent;
    

    }

PS:关于Nginx配置文件(nginx.conf)配置结构,参见另一篇博文:Nginx配置详解

最后

深知大多数初中级Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则近万的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《Java开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

小编已加密:aHR0cHM6Ly9kb2NzLnFxLmNvbS9kb2MvRFVrVm9aSGxQZUVsTlkwUnc==出于安全原因,我们把网站通过base64编码了,大家可以通过base64解码把网址获取下来。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值