目前服务器状态 刚从阿里云重置完
// 1 安装依赖
yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel

// 2 进入/usr/local目录 下载nginx源码包(当然,自己看用哪个版本就可以了)
wget http://nginx.org/download/nginx-1.14.0.tar.gz

// 3 解压
tar -zxvf nginx-1.14.0.tar.gz

// 4 配置安装环境 (这里安装了很多依赖包,有些不是现在就用到的 也可以以后再安装,但是图方便 现在就都安装了)
cd nginx-1.14.0.tar.gz
./configure --prefix=/usr/local/nginx --pid-path=/var/run/nginx/nginx.pid --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --with-http_stub_status_module --with-http_ssl_module --with-http_realip_module --with-pcre --with-http_v2_module

// --with-http_stub_status_module:支持nginx状态查询
// --with-http_ssl_module:支持https
// --with-http_spdy_module:支持google的spdy,想了解请百度spdy,这个必须有ssl的支持
// --with-pcre:为了支持rewrite重写功能,必须制定pcre

// 5 执行编译命令
make && make install   // 这时应该在/usr/local目录又生成了一个nginx目录


// 6 启动nginx服务
cd /usr/local/nginx
cd /sbin
./nginx

// 这样 服务就启动了~

// 查看进程
ps -ef | grep nginx

接下来是配置ssl的过程

我申请的是阿里云的免费ssl证书,这里暂且不表,申请成功之后可以下载下来两个文件.pem .key
//  1 进入/usr/local/nginx/conf 创建cert目录并上传刚才的两个文件
cd /usr/local/nginx/conf
mkdir cert

// 可能用到的上传和解压工具
yum install lrzsz      // rz 选择目录文件上传
yum install unzip      // unzip dist.zip  .zip的解压工具

// 2 修改nginx.conf的配置, 这里直接参考阿里云给的文档帮助
// https://help.aliyun.com/document_detail/98728.html?spm=5176.2020520154.0.0.78fc56a7itcG3V

# 以下属性中以ssl开头的属性代表与证书配置有关,其他属性请根据自己的需要进行配置。
server {
	listen 443 ssl;   						  # SSL协议访问端口号为443。此处如未添加ssl,可能会造成Nginx无法启动。
	server_name localhost;  				  # 将localhost修改为您证书绑定的域名,例如:www.example.com。
	root html;                          	  # 这两行感觉没有,我并没有写 证明也没事~
	index index.html index.htm;			      # 这两行感觉没有,我并没有写 证明也没事~
	ssl_certificate cert/domain name.pem;     # 将domain name.pem替换成您证书的文件名。
	ssl_certificate_key cert/domain name.key; # 将domain name.key替换成您证书的密钥文件名。
	ssl_session_timeout 5m;
	ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;  #使用此加密套件。
	ssl_protocols TLSv1 TLSv1.1 TLSv1.2;      #使用该协议进行配置。
	ssl_prefer_server_ciphers on;   
	location / {
		root html;   # 站点目录,这里可以自己定义自己的站点目录
		index index.html index.htm;   
	}
}

设置HTTP请求自动跳转HTTPS

// 修改nginx.conf的配置,在原来的server上面增加下面的配置(等于是有了两个server)
server {
 	listen 80;
 	server_name localhost;   					  #将localhost修改为您证书绑定的域名,例如:www.example.com。
	rewrite ^(.*)$ https://$host$1 permanent;     #将所有http请求通过rewrite重定向到https。
}
server {
	listen       443 ssl;
    server_name  www.example.com;
    ssl_certificate cert/cert.pem;
    ssl_certificate_key cert/cert.key;
    ssl_session_timeout 5m;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on;
    
	...
}
// 这样就可以了

// 正常情况下 修改完配置都是需要重启nginx的吧~
// 可以先停止
	cd /usr/local/nginx/sbin
    ./nginx -s stop
    ./nginx