[Nginx实战]Nginx实现负载均衡的服务器集群配置及用PHP结合Smarty去自动化配置Nginx的负载均衡文件实现自动化的可行性备案。

jackxiang 2012-3-6 16:15 | |
代理的项目示例:

1)Apache 开80端口,Htdocs:D:\apmxe\htdocs\index.html
2)Nginx配置两样东西。
    (1)8080端口是用来当成负载均衡的一台机器。
    (2)72端口是入口,用来做入口,72下面是变的多台机器的端口来做负载均衡。
Nginx的配置文件如下,加入了对目录的浏览:

访问:http://localhost:72/index.html
测试:把Nginx里的htdocs文件index.html去掉后,一直能访问到,因为nginx这个负载均衡的proxy_next_upstream参数就是干这个事情的,于是否,我们发现一直能访问,
但如果只访问:http://localhost:72 出现当访问到Nginx那一台出现因访问到目录的情况,是因为上面的命令打开了目录浏览,认为有数据返回,不是:http_502 http_504 error timeout invalid_header http_500 http_503 http_404,所以没有转移走,于是否,出现了目录的情况。
=============================================================================
可能出现的问题:[emerg]: "upstream" directive is not allowed here in ......
后来检查了一下原来是upstream backend 位置放错了, upstream位置应该放在http模块里面 但必须是在server模块的外面.
参考:http://wiki.nginx.org/LoadBalanceExample

再就是这种多IP下的Nginx负载均衡怎么用PHP的Smarty来自动化呢?一般情况都如下:

PHP的Smarty去配置server实现思考:


经PHP的smarty翻译后如下:
server 1.1 weight=1 max_fails fail_timeout=30s;
server 1.2 weight=1 max_fails fail_timeout=30s;
localip = 72.46.128.82

这样,也就实现了Nginx的自动配置,做一个前端的Web界面,后经过zoomkeeper,进行自动重启动nginx,进而reload这个修改过的nginx的配置文件即可。

作者:jackxiang@向东博客 专注WEB应用 构架之美 --- 构架之美,在于尽态极妍 | 应用之美,在于药到病除
地址:https://jackxiang.com/post/5042/
版权所有。转载时必须以链接形式注明作者和原始出处及本声明!


最后编辑: jackxiang 编辑于2013-10-22 09:54
评论列表
发表评论

昵称

网址

电邮

打开HTML 打开UBB 打开表情 隐藏 记住我 [登入] [注册]