文档章节

nginx根据域名动态代理

 超级超级管理员
发布于 2015/10/28 15:50
字数 215
阅读 40
收藏 0
点赞 0
评论 0

多个域名,存在数据库里面,访问到nginx的时候,根据不同域名,反向代理到不同的服务器上 编译nginx的时候要启用 auth_request --with-http_auth_request_module

nginx配置

http {
    resolver 114.114.114.114;  # api返回的地址是域名,提示无法解析时添加该行
    auth_request /api.asp;
    auth_request_set $url $sent_http_url;
    
    server {
        listen       80;
        server_name  localhost;
        
        location / {
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header REMOTE-HOST $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_pass $url;

        }
        
        location ~ \.asp$ {
            root           html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }
    }

}

这里面把asp后缀解析为PHP,会提示Access to the script ‘asp‘ has been denied,把php-fpm 配置文件里面的security.limit_extensions 扩展加上asp 重启服务即可

api.asp 内容

<?php
ob_start();
$domain = substr($_SERVER['HTTP_HOST'],5);
$conn = mysql_connect("127.0.0.1","root","password");
if (!$conn)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("vpopmail", $conn);

$result = mysql_query("select host from tables where domain='".$domain."' limit 1");

while($row=mysql_fetch_array($result))
{
    $url = "http://".$row['host'];
}

mysql_close($conn);

header("url: $url");
exit();
?>

© 著作权归作者所有

共有 人打赏支持
粉丝 2
博文 52
码字总数 39592
作品 0
成都
运维
nginx 反向代理,动静态请求分离,proxy_cache缓存及缓存清除

一,nginx反向代理配置 #tomcat 显然就是用户访问www.wolfdream.com(需要设置本地localhost,将www.wolfdream.com指向nginx所在IP)的时候(或将www.wolfdream.com直接写在nginx所在的IP地址)...

晨曦之光 ⋅ 2012/03/09 ⋅ 0

Nginx如何实现反向代理

Nginx的2种用途 静态内容的web服务器; 反向代理服务器; Nginx作为反向代理的特点 接收用户请求是异步的,即先将用户请求全部接收下来,再一次性发送后后端web服务器,极大的减轻后端web服务...

xxrenzhe11 ⋅ 2014/05/02 ⋅ 0

nginx的反向代理配置

首先说明一下,nginx的反向代理和nginx的负载均衡很相似,nginx一般被作为反向代理实现负载均衡,有的人也把nginx的反向代理当做负载均衡,把nginx的负载均衡当做反向代理。nginx有很多功能和...

任小为 ⋅ 2014/08/06 ⋅ 0

centos 6.8 安装LNMP环境(linux+nginx+mysql+php)---2

Nginx 特性 Nginx 性能稳定、功能丰富、运维简单、处理静态文件速度快且消耗系统资源极少。 1、相比 Apache,用 Nginx 作为 Web 服务器:使用资源更少,支持更多并发连接,效率更高。 2、作为...

vperson ⋅ 2017/04/17 ⋅ 0

Nginx 学习笔记(三)proxy_cache 缓存配置和ngx_cache_purge模块

反向代理的缓存清理 一、proxy_cache配置 (1)如何配置和安装,都在这里了:https://github.com/Tinywan/Lua-Nginx-Redis/blob/master/Nginx/Nginx-Web/Nginx-8-proxycache.md (2)被代理域...

tinywan1227 ⋅ 2017/11/20 ⋅ 0

centos 6.8 安装LNMP环境(linux+nginx+mysql+php)

Nginx 特性 Nginx 性能稳定、功能丰富、运维简单、处理静态文件速度快且消耗系统资源极少。 1、相比 Apache,用 Nginx 作为 Web 服务器:使用资源更少,支持更多并发连接,效率更高。 2、作为...

vperson ⋅ 2017/04/17 ⋅ 0

大型网站技术架构系列2:负载均衡

本文主要讲解nginx的负载均衡。 负载均衡基于nginx的反向代理功能。 ~~ 1)让nginx支持jsp动态文件 操作方法:---修改nginx.conf,在server里添加 正在验证--->已经验证。 通过抓包得到的结论...

强子哥哥 ⋅ 2014/02/12 ⋅ 0

Nginx反向代理多域名,forever守护Node进程

前言 问题 解决方案 Nginx反向代理多域名 反向代理 一、 安装Nginx 介绍下我的服务器环境:阿里云的ECS服务器,系统是 Linux CentOS。本着不重复造轮子的原则,本次安装的nginx服务直接使用一...

JustBeCoder ⋅ 2017/10/22 ⋅ 0

Nginx反向代理与负载均衡:节点服务器单/多虚拟机配置+实验环境搭建+原理解析

0.说明 常见的集群架构及相关软件,可以参考下面的导图: 互联网企业常用的是负载均衡集群和高可用性集群,负载均衡集群强调“分担”,通过一定的调度算法 ,可以实现用多个节点服务器来分担...

xpleaf ⋅ 2017/03/06 ⋅ 0

CDN的cache节点(http)结构及工作原理总结(图自画)

无数的cache节点再加上调度就是一个cdn,当然这玩意如果放在运营商里面就是个cache,一来可以帮运营商节省流量,节省其到别的运营商的回源带宽,二来提高用户的用户体验,让用户访问速度更快...

愚人乙 ⋅ 2016/03/16 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Greys Java在线问题诊断工具

https://github.com/oldmanpushcart/greys-anatomy/wiki/greys-pdf#command-monitor

素雷 ⋅ 15分钟前 ⋅ 0

git从远程仓库拉取代码的常用指令

一种(比较麻烦的)拉代码的方法 git clone //克隆代码库,与远程代码库的主干建立连接,如果主干已经在就不用再clone啦,克隆路径为当前路径下的新创建的文件夹 git checkout -b //本地建立...

Helios51 ⋅ 29分钟前 ⋅ 0

005. 深入JVM学习—Java堆内存参数调整

1. JVM整体内存调整图解(调优关键) 实际上每一块子内存区域都会存在一部分可变伸缩区域,其基本流程:如果内存空间不足,则在可变的范围之内扩大内存空间,当一段时间之后,内存空间不紧张...

影狼 ⋅ 34分钟前 ⋅ 0

内存障碍: 软件黑客的硬件视图

此文为笔者近日有幸看到的一则关于计算机底层内存障碍的学术论文,并翻译(机译)而来[自认为翻译的还行],若读者想要英文原版的论文话,给我留言,我发给你。 内存障碍: 软件黑客的硬件视图...

Romane ⋅ 今天 ⋅ 0

SpringCloud 微服务 (七) 服务通信 Feign

壹 继续第(六)篇RestTemplate篇 做到现在,本机上已经有注册中心: eureka, 服务:client、order、product 继续在order中实现通信向product服务,使用Feign方式 下面记录学习和遇到的问题 贰 or...

___大侠 ⋅ 今天 ⋅ 0

gitee、github上issue标签方案

目录 [TOC] issue生命周期 st=>start: 开始e=>end: 结束op0=>operation: 新建issueop1=>operation: 评审issueop2=>operation: 任务负责人执行任务cond1=>condition: 是否通过?op3=>o......

lovewinner ⋅ 今天 ⋅ 0

浅谈mysql的索引设计原则以及常见索引的区别

索引定义:是一个单独的,存储在磁盘上的数据库结构,其包含着对数据表里所有记录的引用指针. 数据库索引的设计原则: 为了使索引的使用效率更高,在创建索引时,必须考虑在哪些字段上创建索...

屌丝男神 ⋅ 今天 ⋅ 0

String,StringBuilder,StringBuffer三者的区别

这三个类之间的区别主要是在两个方面,即运行速度和线程安全这两方面。 首先说运行速度,或者说是, 1.执行速度 在这方面运行速度快慢为:StringBuilder(线程不安全,可变) > StringBuffer...

时刻在奔跑 ⋅ 今天 ⋅ 0

java以太坊开发 - web3j使用钱包进行转账

首先载入钱包,然后利用账户凭证操作受控交易Transfer进行转账: Web3j web3 = Web3j.build(new HttpService()); // defaults to http://localhost:8545/Credentials credentials = Wallet......

以太坊教程 ⋅ 今天 ⋅ 0

Oracle全文检索配置与实践

Oracle全文检索配置与实践

微小宝 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部