debian+nginx配置初探--php环境、反向代理和负载均衡
配置nginx的PHP环境
- 安装nginx
sudo apt-get install nginx
安装nginx就可以通过下面地址来访问了:http://localhost/
- 安装php
sudo apt-get install php5-cli php5-cgi php5-fpm php5-mcrypt
php5-fpm:与nginx配合方式之一,另外个是:spawn-fcgi。
- 配置nginx的虚拟主机
在/etc/nginx/sites-available/default中添加server{
listen 90;
index index.php;
root /usr/share/nginx/mytest/
access_log /usr/share/nginx/mytest/acc.log combined;
location ~ \.php$ {
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}
}其中“/var/run/php5-fpm.sock”是“/etc/php5/fpm/pool.d/www.conf”的listen,记得重启nginx
sudo /etc/init.d/nginx restart
- 测试php是否支持
编辑"/usr/share/nginx/mytest/index.php"<?php
phpinfo();
?> - 如果启动nginx遇到失败等情况,可以查看nginx的错误日志,在
/var/log/nginx/error.log
完全卸载nginx
在配置nginx做实验时配置错了,导致访问不了虚拟主机。一狠心把nginx的配置文件目录(/etc/nginx)都删除了,而且我没有备份这些配置文件,因此想重装nginx。
- 本来以为直接使用如下apt-get指令
sudo apt-get --purge remove nginx
sudo apt-get install nginx就可以搞定,但实际上并没有有自动产生nginx的配置文件,连/etc/nginx目录都没产生。
- 于是autoremove
sudo apt-get --purge remove nginx
sudo apt-get autoremove
sudo apt-get install nginx提示
awk: cannot open /etc/nginx/nginx.conf (No such file or directory)
虽然产生了/etc/nginx目录了,但只有部分配置文件
conf.d sites-available sites-enabled
- 于是
sudo apt-get --purge remove nginx
sudo apt-get autoremove
dpkg --get-selections|grep nginx罗列除与nginx相关的软件,
nginx-common deinstall
然后sdfsd
sudo apt-get --purge remove nginx-common
sudo apt-get install nginx然后OK!
反向代理或负载
- 这涉及到upstream指令,在“/etc/nginx/sites-available/default”设置一组proxy_pass
upstream first_proxy{
server 10.9.31.89:5001 weight=4 max_fails=2 fail_timeout=30s;
}server指令用于制定后端服务器的名称和参数,服务器的名称可以是域名、IP地址、端口号或UNIX Socket。
- 在虚拟机主机配置中指定proxy_pass
server{
listen 99;
location / {
#如果后端服务器返回502、504执行超时都错误则转发到upstream负载均衡池中的另一台服务,实现故障转移。
#proxy_next_upstream http_502 http_504 error timeout invalid_header
proxy_pass http://first_proxy;
proxy_set_header Host www.yourdomain.com;
proxy_set_header X-Forwarded-For $remote_addr;
}
} - 然后就可以通过http://localhost:99/来访问10.9.31.89:5001的服务了。这里只配置了一个后端server,如果配置多个,则实用简单的轮询来达到负载的效果。
debian+nginx配置初探--php环境、反向代理和负载均衡的更多相关文章
- nginx配置虚拟主机、反向代理和负载均衡
为了实现这个功能,需要修改nginx的配置文件,将nginx.conf清理一下,使结构更清晰. worker_processes ; events { worker_connections ; } h ...
- Linux服务之nginx服务篇三(反向代理、负载均衡)
一.Nginx实现反向代理 概念 反向代理:在收到客户端请求之后,会修目标IP地址和端口 正向代理:在收到客户端请求之后,会修源IP地址和端口 上游服务器:代理服务器后端的哪些真正给客户端提供服务的节 ...
- 基于nginx和tengine的tcp反向代理,负载均衡 安装和配置
先下载nginx_tcp_proxy_module模块. wget https://github.com/yaoweibin/nginx_tcp_proxy_module/archive/master ...
- Nginx安装、配置虚拟主机、反向代理、负载均衡
1. nginx安装 下载nginx: 官方网站: http://nginx.org/ 使用的版本是1.8.0版本. Nginx提供的源码. 1.1. 要求的安装环境 1.需要安装gcc的环境.y ...
- Nginx整合tomcat,实现反向代理和负载均衡
1.Nginx与Tomcat整合,通过Nginx反向代理Tomcat. Nginx安装路径为:/usr/local//nginx 首先切换路径到:/usr/local//nginx/conf通过命令 ...
- nginx的使用,以及反向代理,负载均衡,从安装到使用,全部步骤。
先总结nginx实现负载均衡的原理,在这之前先的知道反向代理,因为nginx的负载均衡是在反向代理的基础上实现的: 1.反向代理:通过在nginx的配置文件 (vim /opt/nginx196/co ...
- Nginx反向代理,负载均衡,redis session共享,keepalived高可用
相关知识自行搜索,直接上干货... 使用的资源: nginx主服务器一台,nginx备服务器一台,使用keepalived进行宕机切换. tomcat服务器两台,由nginx进行反向代理和负载均衡,此 ...
- Nginx详解(正向代理、反向代理、负载均衡原理)
Nginx配置详解 nginx概述 nginx是一款自由的.开源的.高性能的HTTP服务器和反向代理服务器:同时也是一个IMAP.POP3.SMTP代理服务器:nginx可以作为一个HTTP服务器进行 ...
- Windos环境用Nginx配置反向代理和负载均衡
Windos环境用Nginx配置反向代理和负载均衡 引言:在前后端分离架构下,难免会遇到跨域问题.目前的解决方案大致有JSONP,反向代理,CORS这三种方式.JSONP兼容性良好,最大的缺点是只支持 ...
随机推荐
- webstrom使用手册
http://blog.csdn.net/kongjiea/article/details/48262851 http://www.jb51.net/article/58310.htm http:// ...
- JavaScript 模块化及 SeaJs 源码分析
网页的结构越来越复杂,简直可以看做一个简单APP,如果还像以前那样把所有的代码都放到一个文件里面会有一些问题: 全局变量互相影响 JavaScript文件变大,影响加载速度 结构混乱.很难维护 和后端 ...
- iOS 之 UICollectionView
1. iOS 之 UICollectionView 之 原理介绍 2. iOS 之 UICollectionView 之 开发步骤 之 OC 3. iOS 之 UICollectionView 之 开 ...
- IIS安装教程
IIS安装步骤图解: 1):打开添加删除程序,并选中添加/删除 Windows组件,后双击! 2): 选中并双击添加/删除 Windows组件后,弹出组件安装向导!并可以看到Internet 信息服务 ...
- Pomelo的监控模块
对服务器的监控和管理有三个主体:master,monitor,client:master负责收集所有服务器的信息,下发对服务器的操作指令.monitor负责上报服务器状态,并对master的命令作出反 ...
- V8编程入门
本文档介绍了V8引擎的一些关键概念,并提供了例子hello world指引你入门. Hello World 让我们看一个Hello World的示例,它将一个字符串参数作为JavaScript语句,执 ...
- Redis缓存数据之简单逻辑
并发不高的情况: 读: 读redis->没有,读DataBase->把DB数据写回redis,有的话直接从redis中取: 写: 写DataBase->成功,再写redis: 并发高 ...
- NodeJS Stream 四:Writable
什么是可写流 可写流是对数据流向设备的抽象,用来消费上游流过来的数据,通过可写流程序可以把数据写入设备,常见的是本地磁盘文件或者 TCP.HTTP 等网络响应. 看一个之前用过的例子 process. ...
- 数据挖掘学习笔记--AdaBoost算法(一)
声明: 这篇笔记是自己对AdaBoost原理的一些理解,如果有错,还望指正,俯谢- 背景: AdaBoost算法,这个算法思路简单,但是论文真是各种晦涩啊-,以下是自己看了A Short Introd ...
- CF448C [Painting Fence]递归分治
题目链接:http://codeforces.com/problemset/problem/448/C 题目大意:用宽度为1的刷子刷墙,墙是一长条一长条并在一起的.梳子可以一横或一竖一刷到底.求刷完整 ...