虚拟主机设置

虚拟主机是HTTP服务根据来访域名的不同转向提供不同的内容的服务形式,所有虚拟主机一般都监听同一个端口,但使用不同的域名。以下依旧继续上一节的示范性Nginx配置文件来说明。

server {
	# 监听端口设置
	listen 80;
	# 定义响应的域名
	server_name www.nginx.cn;
	
	# 定义服务器默认网站根目录位置
	root html;
	# 设定本虚拟主机的访问日志
	access_log logs/nginx.access.log main;
	
	# 默认请求配置
	location / {
		# 定义首页文件的名称
		index index.html;
	}
	
	# 定义错误页面
	error_page 500 502 503 504 /50x.html
	location = /50x.html {
	}
	
	# 静态文件,由nginx自己处理
	location ~ ^/(images|javascript|js|css|flash|media|static)/ {
		# 设定过期时间,如果静态文件更新频繁则可以设置小一些
		expires 30d;
	}
	
	# 禁止访问指定文件
	location ~ /.ht {
		deny all;
	}
}

虚拟主机中使用location来配置网站中各个内容的访问,其中就包括了反向代理、脚本执行等。具体网站的location设置要根据各个网站的不同来设计,后面将针对反向代理和前后端分离对location的设置进行说明。