网站的目录结构为:
# tree /data1/wwwroot/361way.com /data1/wwwroot/361way.com ├── bbs │ └── index.html └── www └── index.html 2 directories, 2 files
/data1/wwwroot/361way.com为nginx的安装目录下默认的存放源代码的路径。
bbs为论坛程序源代码路径
www为主页程序源代码路径
把相应程序放入上面的路径通过
http://www.361way.com 访问的就是主页
http://bbs.361way.com 访问的就是论坛
其它二级域名类推。
实现方法有两种。
方法一:
server { listen 80; server_name ~^(?<subdomain>.+).361way.com$; access_log /logs/www/361way.com_nginx.log combined; index index.html index.htm index.php; root /data1/wwwroot/shop/$subdomain/; location ~ .php$ { fastcgi_pass unix:/dev/shm/php-cgi.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|ico)$ { expires 30d; } location ~ .*\.(js|css)?$ { expires 7d; } }
方法二:
server { listen 80; server_name *.361way.com; access_log /logs/www/361way.com_nginx.log combined; index index.html index.htm index.php; if ($host ~* ^([^\.]+)\.([^\.]+\.[^\.]+)$) { set $subdomain $1; set $domain $2; } location / { root /data1/wwwroot/$domain/$subdomain/; index index.php index.html index.htm; } location ~ .php$ { fastcgi_pass unix:/dev/shm/php-cgi.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|ico)$ { expires 30d; } location ~ .*\.(js|css)?$ { expires 7d; } }