Nginx根据目录自动生成二级域名
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nginx根据目录自动生成二级域名相关的知识,希望对你有一定的参考价值。
前言:
每次创建二级域名如果都修改一次配置文件的话,项目多了会带来很多不必要的工作量,如果能够在一个web目录下创建一个文件夹并且自动生成文件目录的话,那真是极好的,本文就基于nginx贴出这个配置文件.
实验环境(基于阿里云):
阿里云CentOS-6.5
domain.com 域名管理权限
正文:
首先需要在域名管理处做一个泛解析 把*.domain.com 指向你自己的服务器的ip,然后在Nginx配置文件里面增加配置,这个配置还可以制作三级域名,例如*.demo.domain.com.
例子:
web主目录下创建一个test的文件夹自动生成一个叫test.domain.com 的网址.
web目录 /web/data/www
主域名 domain.com
配置代码:
# domain.com server { listen 80; server_name ~^(?<subdomain>.+)\.domain\.com$; charset utf-8; access_log logs/domain.com.access.log main; error_log logs/domain.com.error.log; root /web/data/www/$subdomain; index index.php index.html index.htm; fastcgi_intercept_errors on; error_page 404 = /404.html; location / { try_files $uri $uri/ =404; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; if (!-e $request_filename) { rewrite ^(.*)$ /index.php?s=$1/ last; break; } } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } location ~ .*\.php(\/.*)*$ { fastcgi_pass unix:/tmp/php-cgi.sock; fastcgi_index index.php; include fastcgi.conf; } }
以上是关于Nginx根据目录自动生成二级域名的主要内容,如果未能解决你的问题,请参考以下文章