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兼容性良好,最大的缺点是只支持 ...
随机推荐
- Angular - - angular.equals
angular.equals 对比两个对象/值是否相等.支持值类型.正则表达式.数组和对象. 如果下列至少有一个是正确的,则将两个对象/值视为相等. 两个对象/值能通过===比较. 两个对象/值是同一 ...
- 浅谈Java分页技术
话不多言.我们要实现java分页技术,我们首先就需要定义四个变量,他们是: int pageSize;//每页显示多少条记录 int pageNow;//希望现实第几页 int pageCount; ...
- 建立、配置和使用Activity——启动其他Activity并返回结果
Activity还提供了一个startActivityForResult(Intent intent,int requestCode)方法来启动其他Activity.该方法用于启动指定Activity ...
- 交叉验证(cross validation)
转自:http://www.vanjor.org/blog/2010/10/cross-validation/ 交叉验证(Cross-Validation): 有时亦称循环估计, 是一种统计学上将数据 ...
- 修改GitHub上项目语言显示的问题
问题 最近将自己写的博客放到github上了.由于使用了富文本编辑器.jQuery.Bootstrap等第三方插件,导致js.css等代码远远超过你自己写的代码. 于是也就成这样了 而且这里也显示Ja ...
- 程序启动缓慢-原来是hbm.xml doctype的原因
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "h ...
- ORA-02266: 表中的唯一/主键被启用的外键引用
http://www.cnblogs.com/cici-new/archive/2013/01/01/2841700.html 需要如下操作 先取消子表外键的外键约束,之后删除父表数据,最后再次启用外 ...
- jQuery实践-别踩白块儿网页版
▓▓▓▓▓▓ 大致介绍 终于结束了考试,放假回家了.这次的别踩白块儿网页版要比之前做的 jQuery实践-网页版2048小游戏 要简单一点,基本的思路都差不多. 预览:别踩白块网页版 这篇博客并不是详 ...
- 对于python的__name__="__main__"的含义的理解
学习python的时候经常会看到python 中__name__ = \'__main__\' 这样的代码,可能很多新手一开始学习的时候都比较疑惑,python 中__name__ = '__main ...
- Hadoop权威指南:HDFS-写入数据
Hadoop权威指南:HDFS-写入数据 FileSystem类有一系列的新建文件的方法.最简单的方法是给准备建的文件指定一个Path对象,然后返回一个用于写入数据的输出流: public FSDat ...