20180612

6月12任务
12.17 Nginx负载均衡
12.18 ssl原理
12.19 生成ssl密钥对
12.20 Nginx配置ssl
扩展
针对请求的uri来代理 http://ask.apelearn.com/question/1049
根据访问的目录来区分后端的web http://ask.apelearn.com/question/920
nginx长连接 http://www.apelearn.com/bbs/thread-6545-1-1.html
nginx算法分析 http://blog.sina.com.cn/s/blog_72995dcc01016msi.html

1. Nginx负载均衡

编辑配置文件load.conf
vim /usr/local/nginx/conf/vhost/load.conf

写入如下内容

# 通过upstream模块来指定多个web server
upstream qq #名字随便写
{
    ip_hash; # 域名有指向多个IP时, 确保同一用户始终连接的是同一个IP
    server 61.135.157.156:80;
    server 125.39.240.113:80;
 # 以上指定web服务器IP
}
server
{
    listen 80;
    server_name www.qq.com;
    location /
    {
        proxy_pass      http://qq; #填上面写的名字 
        proxy_set_header Host  $host;
        proxy_set_header X-Real-IP      $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

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

dig命令

yum install -y bind-utils
dig www.qq.com 查看解析到的IP

2. ssl原理

Secure Sockets Layer
yun install -y openssl 安装ssl

3. 生成ssl密钥对

cd /usr/local/nginx/conf

生成私钥
openssl genrsa -des3 -out tmp.key 2048

转换key,取消密码
openssl rsa -in tmp.key -out aminglinux.key
rm -f tmp.key

生成证书请求文件,需要拿这个文件和私钥一起生产公钥文件
openssl req -new -key aminglinux.key -out aminglinux.csr

生成公钥
openssl x509 -req -days 365 -in aminglinux.csr -signkey aminglinux.key -out aminglinux.crt
这里的aminglinux.crt为公钥

4. Nginx配置ssl

vim /usr/local/nginx/conf/vhost/ssl.conf

加入如下内容

server
{
    listen 443;
    server_name aming.com;
    index index.html index.php;
    root /data/wwwroot/aming.com;
    ssl on;
    ssl_certificate aminglinux.crt;
    ssl_certificate_key aminglinux.key;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
}

测试配置并重新加载
/usr/local/nginx/sbin/nginx -t
/usr/local/nginx/sbin/nginx -s reload

若报错unknown directive "ssl", 需要重新编译nginx,加上--with-http_ssl_module

mkdir /data/wwwroot/aming.com
echo "ssl test page.">/data/wwwroot/aming.com/index.html

编辑hosts,增加127.0.0.1 aming.com
curl https://aming.com/

未经允许不得转载:外贸SOHO笔记 » 20180612

赞 (0) 打赏

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下作者~

支付宝扫一扫打赏

微信扫一扫打赏