nginx相关
应用背景
现在有一组服务器 a、b、c、d 要求访问www.quange.com的时候能实现负载均衡分发到a、b、c、d,并且假如有一台服务器挂掉后,不影响网站的访问。 这时候就需要nginx。
MAC上nginx的安装
安装nginx直接可以brew install nginx
安装完以后可以看到 输出
Docroot is: /usr/local/var/www
The default port has been set in /usr/local/etc/nginx/nginx.conf to 8080 so that
nginx can run without sudo.
nginx will load all files in /usr/local/etc/nginx/servers/.
To have launchd start nginx now and restart at login:
brew services start nginx
Or, if you don't want/need a background service you can just run:
nginx
nginx配置
由上面的输出信息可以找到配置文件/usr/local/etc/nginx/nginx.conf 在http节点的下面添加upstream ,名称为bbbc,里面是几组服务器的ip和端口。那么location的proxy_pass就必须为http://bbbc。 而server的listen 端口为8080 server_name就是在浏览器输入的地址。比如下面的配置,在浏览器中应该输入http://www.quange.com:8080 #####前提是要在/etc/hosts中配置host。
upstream bbbc {
server 127.0.0.1:3000;
server 127.0.0.1:3001;
}
server {
listen 8080;
server_name www.quange.com;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html;
index index.html index.htm;
proxy_pass http://bbbc;
}
nginx操作
启动用
nginx
停止
nginx -s stop
不停止重新加载配置文件
nginx -s reload
Written on November 10, 2016