centos7 Nginx配置https

centos7 Nginx配置http

Nginx下载链接

Nginx简介

Nginx (engine x) 是一个高性能的HTTP和反向代理服务,也是一个IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。2011年6月1日,nginx 1.0.4发布。

Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。

一、安装nginx服务

1、安装nginx依赖环境包
yum install gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel

2、创建application,进入application
mkdir /application
cd /application

3、创建nginx文件夹
mkdir nginx 

4、进入nginx
cd nginx

5、官网下载nginx1.18.0压缩包
wget http://nginx.org/download/nginx-1.18.0.tar.gz

6、解压nginx
tar zxvf nginx-1.18.0.tar.gz

7、进入解压目录
cd nginx-1.18.0

8、编译nginx
1)默认编译方式
. /configure

2)自定义编译选项
. /configure \
--user=nginx \
--group=nginx \
--prefix=/usr/local/nginx \
--conf-path=/usr/local/nginx/conf/nginx.conf \
--pid-path=/usr/local/nginx/conf/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi
--with-http_ssl_module
注:以上为默认编译方式和具体指定的编译方式,任选以上这两种之一即可。--with-http_ssl_module这个选项是https的重要模块必须安装。

3)本文中使用的编译安装方式
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module

注:以上--with-http_ssl_module这个模块是https的关键,必须安装!


9、安装nginx
make && make install

安装后启动nginx

/usr/local/nginx/sbin/nginx

访问:https://ip服务器IP地址

centos7 Nginx配置https_第1张图片

二、开机启动nginx

方式一

1)启动nginx

/usr/local/nginx/sbin/nginx

2)关闭nginx

/usr/local/nginx/sbin/nginx -s stop

3)重启nginx

/usr/local/nginx/sbin/nginx -s reload

注:如果嫌以上方式太麻烦,可以做软连接ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx或者在全局环境变量里增加nginx环境变量,然后直接使用nginx即可!

方式二

1)编辑nginx服务启动文件

vi /etc/init.d/nginx

写入:

#! /bin/bash
#chkconfig: - 85 15
PATH=/usr/local/nginx
NAME=nginx
DAEMON=$PATH/sbin/$NAME
CONFIGFILE=$PATH/conf/$NAME.conf
PIDFILE=$PATH/logs/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME
set -e
[ -x "$DAEMON" ] || exit 0
do_start() {
$DAEMON -c $CONFIGFILE || echo -e "\033[32m nginx already running \033[0m"
}
do_stop() {
$DAEMON -s stop || echo -e "\033[31m nginx not running \033[0m"
}
do_reload() {
$DAEMON -s reload || echo -e "\033[31m nginx can't reload \033[0m"
}
case "$1" in
start)
echo -e "\033[32m $NAME running \033[0m"
do_start
;;
stop)
echo -e "\033[31m $NAME stoping \033[0m"
do_stop
;;
reload|graceful)
echo -e "\033[32m $NAME configuration...\033[0m"
do_reload
;;
restart)
echo -e "\033[32m Restarting : $NAME \033[0m"
do_stop
do_start
;;
*)
echo "Usage: $SCRIPTNAME {start|stop|reload|restart}" >&2
exit 3
;;
esac
exit 0

注:切记编辑完启动脚本以后一定要给予执行权限,不然启动无效!

2)设置启动文件执行权限

chmod +x /etc/init.d/nginx

3)启动nginx

//设置开机自启

chkconfig nginx on

//启动nginx

/etc/init.d/nginx start

//重启nginx

/etc/init.d/nginx restart

//查看nginx服务启动状态

chkconfig --list

//查看nginx服务是否开启

netstat -antupl | grep nginx

开机启动nginx

1)编辑开机启动文件

vi /etc/rc.local

添加一行

/usr/local/nginx/sbin/nginx

2)设置启动文件权限

chmod 755 /etc/rc.local

访问地址:http://你的IP地址
注:如果使用方式二脚本启动服务,那么以上启动方式可以省略!

二、配置HTTPS

1、进入配置文件目录

cd /usr/local/nginx/conf

2、创建https文件夹 需要把Nginx的ssl证书放到这里面

mkdir https 

3、简单配置一下


server {
        listen       443 ssl;
        server_name  xxx.xxx.com;

        ssl_certificate      https/xxx.xxx.com.crt;
        ssl_certificate_key  https/xxx.xxx.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;
        }
    }

4、重新加载配置文件
#测试配置文件修改是否正常

/usr/local/nginx/sbin/nginx -t 

#重新加载

/usr/local/nginx/sbin/nginx -s reload 

访问地址:https://你的域名

你可能感兴趣的:(nginx,运维,https)