nginx安装,配置、虚拟主机、轮询、域名重定向
来源:互联网 发布:ae 编程 编辑:程序博客网 时间:2024/06/02 04:37
一、Nginx 下载
在http://nginx.org官网上下载安装包。nginx-1.12.0.tar.gz
二、.Nginx 安装
1).解压及简单配置
[root@server1 ~]# yum install gcc -y ##安装gcc
[root@server1 ~]# tar zxf nginx-1.12.0.tar.gz ##解压nginx-1.12.0.tar.gz
[root@server1 ~]# ls
nginx-1.12.0 nginx-1.12.0.tar.gz
[root@server1 ~]# cd nginx-1.12.0
[root@server1 ~]# vim auto/cc/gcc
178 # debug
179 #CFLAGS=”$CFLAGS -g” ##禁止debug调试
[root@server1 nginx-1.12.0]# vim src/core/nginx.h
14 #define NGINX_VER “nginx/” ##禁止出现nginx的版本号
2)软件配置
[root@server1 nginx-1.12.0]# ./configure –prefix=/usr/local/nginx –with-http_ssl_module –with-file-aio –with-threads –with-http_stub_status_module
如果出现以下错误:
[root@server1 nginx-1.12.0]# yum install pcre-devel.x86_64 -y
重新配置:
[root@server1 nginx-1.12.0]# ./configure –prefix=/usr/local/nginx –with-http_ssl_module –with-file-aio –with-threads –with-http_stub_status_module
如果出现以下错误:
[root@server1 nginx-1.12.0# yum install openssl-devel.x86_64 -y
重新配置:
[root@server1 nginx-1.12.0]# ./configure –prefix=/usr/local/nginx –with-http_ssl_module –with-file-aio –with-threads –with-http_stub_status_module
3.编译、安装
[root@server1 nginx-1.12.0]# make
[root@server1 nginx-1.12.0]# make install
4、作软链接将nginx的启动命令作为系统命令。
[root@server1 sbin]# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/
[root@server1 conf]# nginx -t ##检测
[root@server1 conf]# nginx -s reload ##重新加载
三、配置
1.创建管理niginx的用户
[root@server1 conf]# useradd -M -d /usr/local/nginx/ -s /sbin/nologin -u 800 nginx
[root@server1 conf]# vim nginx.conf ##修改配置文件
user nginx nginx; ##修改nginx的用户和组
worker_processes 2; ##两块cpu
worker_cpu_affinity 01 10; ##绑定cpu
[root@server1 conf]# nginx -t ##检测
[root@server1 conf]# nginx -s reload ##重新加载
2.nginx访问加密
[root@server1 conf]# vim nginx.conf
# HTTPS server # server { listen 443 ssl; server_name localhost; ssl_certificate cert.pem; ssl_certificate_key cert.pem; 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; } }}
[root@server1 certs]# pwd
/etc/pki/tls/certs
[root@server1 certs]# make cert.pem ##生成自定义证书
[root@server1 conf]# nginx -t
[root@server1 conf]# nginx -s reload
测试:https://172.25.6.1
四、虚拟主机
虚拟主机允许一个http服务器同时为多个额昂战提供服务
[root@server1 conf]# vim nginx.conf
server { listen 80; server_name www.westos.org; location / { root /www; index index.html; }}server { listen 80; server_name bbs.westos.org; location / { root /bbs; index index.html; }}
[root@server1 conf]# nginx -t
[root@server1 conf]# nginx -s reload
[root@server1 conf]# mkdir /www ##建立默认发布目录
[root@server1 conf]# cd /www
[root@server1 www]# vim index.html ##建立www.westos.org的默认发布文件
www.westos.server1
[root@server1 www]# mkdir /bbs ##建立默认发布目录
[root@server1 www]# cd /bbs
[root@server1 bbs]# vim index.html ##建立bbs.westos.org的解析文件
bbs.westos.server1
在测试主机里添加域名解析:
[root@foundation6 ~]# vim /etc/hosts
172.25.6.1 server1 www.westos.org bbs.westos.org
测试:
在浏览器中输入:www.westos.org bbs.westos.org
五、轮询
参数说明:
weight:权重。默认为1,weight越大,负载的权重越大。
backup:其他所有的服务器down之后,将会去请求backup服务器。
ip_hash:每个请求按照访问ip的hash结果分配,这样每个访客固定访问 一个后端服务器。
[root@server1 conf]# vim nginx.conf
http { upstream westos { server 172.25.6.2:80; ##服务器1 server 172.25.6.3:80; ##服务器2 }server { listen 80; server_name www.westos.org; ##域名 location / { proxy_pass http://westos; }}
server2:服务器1
[root@server2 ~]# yum install httpd -y ##安装http服务
[root@server2 ~]# /etc/init.d/httpd start ##开启http服务
[root@server2 ~]# cd /var/www/html/
[root@server2 html]# vim index.html ##默认发布目录
www.westos.org-server2
server3:服务器2
[root@server3 ~]# yum install httpd -y ##安装http服务
[root@server3 ~]# /etc/init.d/httpd start ##开启http服务
[root@server3 ~]# cd /var/www/html/
[root@server3 html]# vim index.html ##默认发布目录
www.westos.org-server3
测试:
[root@foundation6 ~]# for i in {1..6}; do curl www.westos.org; done
ip_hash
[root@server1 conf]# vim nginx.conf
测试:
[root@foundation6 ~]# for i in {1..6}; do curl www.westos.org; done
weight
[root@server1 conf]# vim nginx.conf
测试:
[root@foundation6 ~]# for i in {1..6}; do curl www.westos.org; done
backup
[root@server1 conf]# vim nginx.conf
关闭server2:服务器1的http服务
关闭server3:服务器2的http服务
测试:
cur www.westos.org
在浏览器里输入www.westos.org,输出的是本机http默认文件
六、域名重定向
[root@server1 conf]# vim nginx.conf
server { listen 80; server_name westos.org; rewrite ^(.*) http://bbs.westos.org$1 permanent; ##bbs.westos.org的域名重定向为westos.org}
在测试主机里添加westos.org的域名解析
[root@foundation6 ~]# vim /etc/hosts
172.25.6.1 server1 www.westos.org bbs.westos.org westos.org
测试:
[root@foundation6 ~]# curl -I westos.org
2.加密上传重定向域名
[root@server1 conf]# vim nginx.conf
# HTTPS server # server { listen 443 ssl; server_name bbs.westos.org; ssl_certificate cert.pem; ssl_certificate_key cert.pem;server { listen 80; server_name westos.org; rewrite ^(.*) https://bbs.westos.org$1 permanent;}
[root@server1 conf]# nginx -t
[root@server1 conf]# nginx -s reload
测试:
[root@foundation6 ~]# curl -I westos.org
- nginx安装,配置、虚拟主机、轮询、域名重定向
- nginx配置域名重定向
- nginx虚拟主机重定向
- nginx 域名重定向
- Nginx 301重定向域名
- Nginx 301重定向域名
- Nginx 301域名重定向
- Nginx 301重定向域名
- nginx域名301重定向
- Nginx 301重定向域名
- nginx站点配置之域名301重定向
- nginx下虚拟目录配置301域名重定向
- Nginx 单IP绑定多域名配置 顶级域名重定向到www域名
- nginx伪静态配置301重定向,域名301重定向
- 配置nginx使得主域名301重定向到www子域名
- Nginx配置解读,虚拟主机,https配置,反向代理,https重定向
- nginx域名重定向遇到的问题
- nginx 301 域名重定向方法
- POJ
- PAT (Basic Level) Practise (中文) 1063. 计算谱半径(20)
- 数组的概念,定义格式,取值,赋值以及数组的初始化
- struts2的工作原理 及优缺点
- 跳台阶
- nginx安装,配置、虚拟主机、轮询、域名重定向
- 【C#】枚举类型Enum与状态设计模式
- 原生js和canvas实现的 柱状图、饼状图、折线图
- Python中的raw_input() 与 input()
- Machine Learning From Scratch-从头开始机器学习
- Linux进阶之 cp 命令
- 广播的最佳实践——实现强制下线功能
- 微软2017年预科生计划在线编程笔试-#1490 : Tree Restoration
- 解决eclipse add and remove 项目名带括号