文档章节

Nginx 二级域名入门配置

Finley.Hamilton
 Finley.Hamilton
发布于 2015/04/27 22:40
字数 377
阅读 147
收藏 14
点赞 0
评论 0

要解决的问题

一个域名,如果只挂一个站点有点浪费,希望可以 aa.hostname.com -> localhost:8000 bb.hostname.com -> localhost:8001

思路

  • 在 /etc/hosts 底下加入对hostname.com, aa.hostname.com, bb.hostname.com的解析。
  • 二级域名的本质是用proxy_pass来实现的,路径的match导致请求重定向到proxy_pass的地方

方案

这是一个完整的/etc/nginx/nginx.conf,用python -m http.server来做示范了

user www-data;
worker_processes 4;
pid /run/nginx.pid;

events {
	worker_connections 768;
	# multi_accept on;
}

http {

	##
	# Basic Settings
	##

	sendfile on;
	tcp_nopush on;
	tcp_nodelay on;
	keepalive_timeout 65;
	types_hash_max_size 2048;
	# server_tokens off;

	# server_names_hash_bucket_size 64;
	# server_name_in_redirect off;

	include /etc/nginx/mime.types;
	default_type application/octet-stream;

	##
	# Logging Settings
	##

	access_log /var/log/nginx/access.log;
	error_log /var/log/nginx/error.log;

	##
	# Gzip Settings
	##

	gzip on;
	gzip_disable "msie6";

	# gzip_vary on;
	# gzip_proxied any;
	# gzip_comp_level 6;
	# gzip_buffers 16 8k;
	# gzip_http_version 1.1;
	# gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;

	##
	# nginx-naxsi config
	##
	# Uncomment it if you installed nginx-naxsi
	##

	#include /etc/nginx/naxsi_core.rules;

	##
	# nginx-passenger config
	##
	# Uncomment it if you installed nginx-passenger
	##
	
	#passenger_root /usr;
	#passenger_ruby /usr/bin/ruby;

	##
	# Virtual Host Configs
	##

	server {
		server_name aa.hostname.com;
		listen 80;
		location / {
			proxy_pass	http://127.0.0.1:8000/Documents/;
		}
	}

        server {
		server_name bb.hostname.com;
		listen 80;
		location / {
			proxy_pass	http://127.0.0.1:8001/Documents/;
		}
	}
	include /etc/nginx/conf.d/*.conf;
	include /etc/nginx/sites-enabled/*;
}


#mail {
#	# See sample authentication script at:
#	# http://wiki.nginx.org/ImapAuthenticateWithApachePhpScript
# 
#	# auth_http localhost/auth.php;
#	# pop3_capabilities "TOP" "USER";
#	# imap_capabilities "IMAP4rev1" "UIDPLUS";
# 
#	server {
#		listen     localhost:110;
#		protocol   pop3;
#		proxy      on;
#	}
# 
#	server {
#		listen     localhost:143;
#		protocol   imap;
#		proxy      on;
#	}
#}

Nginx Road Map

显然只有http协议底下的转发是容易的,需要考虑如果有websocket的情况如何进行转发。 感觉思路应该是大体上一致的。

Ref Reverse Proxy Official Admin Guide 值得学的东西太多

大坑

如果hostname.com是被/etc/hosts解析的,一定要加上对aa.hostname.com;bb.hostname.com的解析才可以

© 著作权归作者所有

共有 人打赏支持
Finley.Hamilton

Finley.Hamilton

粉丝 4
博文 44
码字总数 15431
作品 0
广州
nginx 二级域名之一

找到一个nginx配置文件可以从mongodb中获取 nginx 二级域名之二 需求:平台发布的应用程序后,系统会自动生成一个二级域名。用户可以直接访问自己的二级域名进行访问。用户甚至以集群的方式发...

贺鑫 ⋅ 2012/12/18 ⋅ 0

Nginx关于个性二级域名的配置

在很多地方,比如说博客网站。我们经常可以会通过网站提供的配置功能,实现个性化的属于个人的二级域名,比如说http://cevin15.oschina.net。当然,OSC的博客目前还没有这个功能。 最近遇到个...

英强 ⋅ 2015/03/01 ⋅ 10

nginx配置网站子域名,该怎么配置???

nginx 配置网站的二级域名,现nginx 配置了tomcat 的80端口(网站域名映射的项目),在此基础上服务器多部署了一个PHP项目,需要配置httpd 的8008 端口为网站的二级域名,该怎么修改nginx的配...

黑帽子 ⋅ 2015/01/09 ⋅ 2

利用nginx泛域名解析配置二级域名和多域名,实现二级域名子站,用户个性独立子域名。

利用nginx泛域名解析配置二级域名和多域名,实现二级域名子站,用户个性独立子域名。 主要针对用户独立子域名这种情况,不可能在配置里面将用户子域名写完,因此需要通过nginx泛解析方式。 ...

蜗牛奔跑 ⋅ 2015/11/02 ⋅ 1

NGINX动态配置多个二级域名

我解析泛二级域名之后,因为我也不知道别人访问的二级域名是什么(不是真的什么二级域名都可以访问,我这个只是一个假设),比如有一个用来访问图片文件的二级域名 img.osc.net。我想通过NGI...

Kylin_Shaw ⋅ 2016/07/20 ⋅ 3

Nginx多Server反向代理配置

Nginx强大的正则表达式支持,可以使server_name的配置变得很灵活,如果你要做多用户博客,那么每个用户拥有自己的二级域名也就很容易实现了。 下面我就来说说server_name的使用吧: server_n...

Aman_li ⋅ 2014/12/04 ⋅ 0

通过新浪云部署NideShop微信小程序商城(基于Node.js+MySQL+ThinkJS)

本文档为微信小程序商城NideShop项目的安装部署教程(GitHub),欢迎star 一、购买新浪云SAE 为什么选择SAE? 免费二级域名和支持https访问,不用备案,可用于做微信小程序服务器。 SAE推荐链接...

ch10mmt ⋅ 2017/07/15 ⋅ 0

关于二级域名的疑惑,nginx能解决这问题吗?

最近想对手里的小站做二级域名,首先到域名提供商解析了几个二级域名如“a.domain.com、b.domain.com、c.domain.com”,由于之前没做个二级域名,以为域名提供商可以做URL转发, 我自以为可以...

杨某某 ⋅ 2013/07/11 ⋅ 2

nginx server_参数配置总结(转)

转:http://onlyzq.blog.51cto.com/1228/535279 Nginx中的servername指令主要用于配置基于名称的虚拟主机,servername指令在接到请求后的匹配顺序分别为: 1、准确的server_name匹配,例如: ...

jims ⋅ 2016/10/16 ⋅ 0

在nginx中配置如何防止直接用ip访问服务器web server及server_name特性讲解

看了很多nginx的配置,好像都忽略了ip直接访问web的问题,不利于SEO优化,所以我们希望可以避免直接用IP访问网站,而是域名访问,具体怎么做呢,看下面。 官方文档中提供的方法: If you do ...

jing31 ⋅ 2011/01/28 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Java Web如何操作Cookie的添加修改和删除

创建Cookie对象 Cookie cookie = new Cookie("id", "1"); 修改Cookie值 cookie.setValue("2"); 设置Cookie有效期和删除Cookie cookie.setMaxAge(24*60*60); // Cookie有效时间 co......

二营长意大利炮 ⋅ 今天 ⋅ 0

【每天一个JQuery特效】淡入淡出显示或隐藏窗口

我是JQuery新手爱好者,有时间就练练代码,防止手生,争取每天一个JQuery练习,在这个博客记录下学习的笔记。 本特效主要采用fadeIn()和fadeOut()方法显示淡入淡出的显示效果显示或隐藏元...

Rhymo-Wu ⋅ 今天 ⋅ 0

Spring JDBC使用方法

普通实现: 1、创建数据表customer。 可以使用任何数据库实现,在项目中要引入相应数据库驱动包并配置相应数据库连接。 2、创建Customer pojo。 Customer类的属性对应数据库的属性,除了为每...

霍淇滨 ⋅ 今天 ⋅ 0

Contos 7 安装Jenkins

Jenkins是一款能提高效率的软件,它能帮你把软件开发过程形成工作流,典型的工作流包括以下几个步骤 开发 提交 编译 测试 发布 有了Jenkins的帮助,在这5步中,除了第1步,后续的4步都是自动...

欧虞山 ⋅ 今天 ⋅ 0

revel

revel install go get github.com/revel/revelgo get github.com/revel/cmd create new app revel new git.oschina.net/zdglf/myapp run app revel run git.oschina.net/zdglf/myapp ot......

zdglf ⋅ 今天 ⋅ 0

49. Group Anagrams - LeetCode

Question 49. Group Anagrams Solution 思路:维护一个map,key是输入数组中的字符串(根据字符排好序) Java实现: public List<List<String>> groupAnagrams(String[] strs) { Map<Strin......

yysue ⋅ 今天 ⋅ 0

spring Email

使用spring发Email其实就是使用spring自己封装携带的一个javamail.JavaMailSenderImpl类而已。这个类可以当一个普通的java对象来使用,也可以通过把它配置变成spring Bean的方式然后注入使用...

BobwithB ⋅ 今天 ⋅ 0

spark 整理的一些知识

Spark 知识点 请描述spark RDD原理与特征? RDD全称是resilient distributed dataset(具有弹性的分布式数据集)。一个RDD仅仅是一个分布式的元素集合。在Spark中,所有工作都表示为创建新的...

tuoleisi77 ⋅ 今天 ⋅ 0

思考

时间一天天过感觉自己有在成长吗?最怕的是时光匆匆而过,自己没有收获!下面总结下最近自己的思考。 认识自己 认识另一个自己,人们常说要虚心听取别人意见和建议。然而人往往是很难做到的,...

hello_hp ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部