介绍
nginx 由C开发,就是速度快(别的词等我有能力了再补上去)
启动报如下错
[root@root sbin]# nginx: [emerg] open() "/var/run/nginx/nginx.pid" failed (2: No such file or directory)
直接在 /var/run/nginx/nginx.pid 中建相应文件即可。
应用场景
#1 http服务器 一般可用作静态资源的服务器(图片服务器等)
直接启动即可
2 虚拟主机
a 通过不同的端口区分不同的网站,只需要在conf中的nginx.conf 中增加一个节点
server {
listen 81;
server_name localhost;
location / {
root html;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
如上即可通过监听 81端口访问服务器上的html文件
b 通过不同的域名区分
server {
listen 80;
server_name www.zzlhs.club;
location / {
root www;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
server {
listen 80;
server_name 9421.zzlhs.club;
location / {
root 9421;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
如上两个即是通过访问不同的域名来区分不同的网站内容
3 反向代理
配置反向代理也是在 nginx.conf 中做配置
a 先写一个 upstream 如下
upstream 9421{
server = 192.123.23.32:8081;
server = 192.123.23.32:8082;
}
b 将server中的 location中的root 换成 proxy_pass http://tomcat1; 如下所示
server {
listen 80;
server_name 9421.zzlhs.club;
location / {
proxy_pass http://9421;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
4 负载均衡
负载均衡即是在upstream 中添加weight即可
upstream 9421{
server = 192.123.23.32:8081;
server = 192.123.23.32:8082 weight=2;
}
如上所示,当你访问3次服务器,会有2次调用 8082端口的,一个调用8081端口的。当然如果不设置weight默认访问的概率的相等的。
除此以外,负载均衡其实还有很多策略 如 IP的hash值做映射、随机策略、最少并发量等我还没实验过。希望对大家有帮助,如有错大家帮忙指出,谢谢。