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兼容性良好,最大的缺点是只支持 ...
随机推荐
- 插入排序法-java案例详解
/** * 功能:插入排序法 * 基本思想:把n个待排序的元素看成一个有序和无序表,开始时有序表中只包含一个元素, * 无序表中包含有n-1个元素,排序过程中每次从无序表中取出第一个元素,把它的排序码 ...
- js原生设计模式——4安全的工厂方法模式之oop编程增强版
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8&qu ...
- SQL 日期筛选的两种方式
主要解决的是后一天的问题~容易漏掉最后一天~第一种方法,拼接String,第二种方法直接在最后一天加一天 第一: <if test="beginDate != null and beg ...
- KingbaseES的standby搭建
KingbaseES数据库部署及双机热备配置 Dataguard双机热备部署 注:配置期间使用数据库的属主用户进行操作 1.1 数据一致性准备 (1)修改数据库的配置文件参数:(2阶段初始化的数据库实 ...
- iOS 图片水印、图片合成文字或图片实现
这个需求可能有时候会碰到,比如自己的照片加版权,打水印等 网上的方法,有不少感觉不全对,或者需求不是特全,这里我总结了3种场景下的需求: 1.本地图片合成文字 2.本地图片合成图片 3.网络图片先下载 ...
- MEAN教程2-Nodejs安装
安装Node.js稳定版本最简单的办法也是使用二进制文件,Node.js官方网站上提供了下载地址,可用于Linux.Mac OS X和Windows系统.同样要注意下载与目标操作系统架构一致的文件. ...
- 微信前端面试题----js实现LazyMan
这是微信小程序的一道面试题,题目是这样的: 实现一个LazyMan,可以按照以下方式调用:LazyMan("Hank")输出:Hi! This is Hank! LazyMan(& ...
- JavaScript 语法
一.JavaScript简介 1.JavaScript是个什么东西? 它是个脚本语言,需要有宿主文件,它的宿主文件是HTML文件. 2.它与Java什么关系? 没有什么直接的联系,Java是Sun公司 ...
- 使用python制作ArcGIS插件(5)其他技巧
使用python制作ArcGIS插件(5)其他技巧 by 李远祥 使用python做插件开发,除了了解ArcToolBox工具之外,还需要在了解ArcPy的相关函数和接口.只有掌握了这些,才可以顺利的 ...
- 一篇文章搞定css3 3d效果
css3 3d学习心得 卡片反转 魔方 banner图 首先我们要学习好css3 3d一定要有一定的立体感 通过这个图片应该清楚的了解到了x轴 y轴 z轴是什么概念了. 首先先给大家看一个小例子: 卡 ...