網站的目錄結構為:
# tree /home/wwwroot/linuxeye.com
/home/wwwroot/linuxeye.com
├── bbs
│ └── index.html
└── www
└── index.html
2 directories, 2 files
/home/wwwroot/linuxeye.com為nginx的安裝目錄下默認的存放源代碼的路徑。
bbs為論壇程序源代碼路徑
www為主頁程序源代碼路徑
把相應程序放入上面的路徑通過
http://www.linuxeye.com 訪問的就是主頁
http://bbs.linuxeye.com 訪問的就是論壇
其它二級域名類推。
有2種方法,推薦方法一
方法一:
server {
listen 80;
server_name ~^(?<subdomain>.+).linuxeye.com$;
access_log /data/wwwlogs/linuxeye.com_nginx.log combined;
index index.html index.htm index.php;
root /home/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 *.linuxeye.com;
access_log /home/wwwlogs/linuxeye.com_nginx.log combined;
index index.html index.htm index.php;
if ($host ~* ^([^\.]+)\.([^\.]+\.[^\.]+)$) {
set $subdomain $1;
set $domain $2;
}
location / {
root /home/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;
}
}
原文:https://blog.linuxeye.com/430.html