一所懸命html
最近在研究nginx,整好遇到一个需求就是但愿服务器与客户端之间传输内容是加密的,防止中间监听泄露信息,可是去证书服务商那边申请证书又不合算,由于访问服务器的都是内部人士,因此本身给本身颁发证书,忽略掉浏览器的不信任警报便可。下面是颁发证书和配置过程。nginx
首先确保机器上安装了openssl和openssl-devel浏览器
#yum install openssl #yum install openssl-devel
而后就是本身颁发证书给本身缓存
#cd /usr/local/nginx/conf #openssl genrsa -des3 -out server.key 1024 #openssl req -new -key server.key -out server.csr #openssl rsa -in server.key -out server_nopwd.key #openssl x509 -req -days 365 -in server.csr -signkey server_nopwd.key -out server.crt
至此证书已经生成完毕,下面就是配置nginx服务器
server { listen 443; ssl on; ssl_certificate /usr/local/nginx/conf/server.crt; ssl_certificate_key /usr/local/nginx/conf/server_nopwd.key; }
而后重启nginx便可。加密
ps: 若是出现“[emerg] 10464#0: unknown directive "ssl" in /usr/local/nginx-0.6.32/conf/nginx.conf:74”则说明没有将ssl模块编译进nginx,在configure的时候加上“--with-http_ssl_module”便可^^spa
至此已经完成了https服务器搭建,但如何让浏览器信任本身颁发的证书呢?server
今天终于研究捣鼓出来了,只要将以前生成的server.crt文件导入到系统的证书管理器就好了,具体方法:htm
控制面板 -> Internet选项 -> 内容 -> 发行者 -> 受信任的根证书颁发机构 -> 导入 -》选择server.crtblog
沉没的Atlantis
一.安装依赖包
每次安装软件都必须,默认会少几个包,必须安装
yum install autoconf automake zlib zlib-devel openssl openssl-devel pcre pcre-devel gcc
二.下载nginx和相关模块
nginx:能够去官网 http://nginx.org/ 下载最新版
wget http://nginx.org/download/nginx-1.7.8.tar.gz
缓存模块ngx_cache_purge:能够去 http://labs.frickle.com/nginx_ngx_cache_purge/ 下载最新版本
wget http://labs.frickle.com/files/ngx_cache_purge-2.2.tar.gz
#解压 tar zxvf nginx-1.7.8.tar.gz tar zxvf ngx_cache_purge-2.2.tar.gz
三.编译安装
按 Ctrl+C 复制代码
./configure --prefix=/usr/local/nginx --with-http_ssl_module
make
make install
按 Ctrl+C 复制代码
安装好以后,默认的nginx根目录为 /usr/local/nginx
四.缓存配置例子
nginx配置的例子不少,就不赘述,直接问度娘吧.