Ubuntu16.04编译安装Nginx并配置https

以下命令均使用root权限操作,如果是普通权限需要在命令最前面加“sudo”

一、安装所需环境

 1 #gcc g++依赖库
 2 apt-get install build-essential
 3 apt-get install libtool
 4 
 5 #pcre依赖库
 6 apt-get install libpcre3 libpcre3-dev
 7 
 8 #zlib依赖库
 9 apt-get install zlib1g-dev
10 
11 #ssl依赖库
12 apt-get install openssl
13 apt-get install libssl-dev

二、编译以及安装

先到官网下载源码包:http://nginx.org/,当然也可以使用wget命令

#下载源码包
wget http://nginx.org/download/nginx-1.12.2.tar.gz

#解压
tar -zxf nginx-1.12.2.tar.gz

#进入目录
cd nginx-1.12.2/

#配置,注意一定要加上 --with-http_ssl_module
./configure --prefix=/usr/local/nginx --with-http_ssl_module

#编译
make

#安装
make install

#启动
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

启动后,使用浏览器访问

说明Nginx安装成功

 三、配置https

首先申请一个CA证书,在这里我申请的是腾讯云的免费证书,申请好之后将证书和密匙上传至/usr/local/nginx/conf文件夹。然后在/usr/local/nginx/html文件夹新建一个https.html,作为https访问的默认页面

#打开Nginx配置文件
vim /usr/local/nginx/conf/nginx.conf

#翻到文件最后,将https节点的注释删掉,并配置证书
# HTTPS server
#
server {
      listen       443 ssl;
      server_name  www.yourdomain.com;

      ssl_certificate      1_www.yourdomain.com_bundle.crt;
      ssl_certificate_key  2_www.yourdomain.com.key;
      ssl_session_cache    shared:SSL:1m;
      ssl_session_timeout  5m;
   
      ssl_ciphers  HIGH:!aNULL:!MD5;
      ssl_prefer_server_ciphers  on;
 
      ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
         
      location / {
           root   html;
           index  https.html;
      }
}

#测试配置文件
/usr/local/nginx/sbin/nginx -t

#测试通过后,重载配置文件
/usr/local/nginx/sbin/nginx -s reload

然后通过https访问服务器即可

原文地址:https://www.cnblogs.com/xiaoyao-lxy/p/8391317.html