标签:gif files nginx配置文件 name wav fas index.php dex www
例如有两个域名,指向同一个服务器IP
www.domain1.com
www.domain2.com
我建立两个目录, 存放网站文件
/var/www/domain1.com/public
/var/www/domain2.com/public
nginx配置文件为:
server { listen 80 default_server; listen [::]:80 default_server ipv6only=on; server_name ~^(www\.)?(.+)$; set $domain $2; root /var/www/$domain/public; index index.php index.html index.htm; if ($host = domain1.com){ rewrite ^ http://www.domain1.com permanent; } if ($host = domain2.com){ rewrite ^ http://www.domain2.com permanent; } location / { try_files $uri $uri/ /index.php?$query_string; } location ~ \.php$ { try_files $uri /index.php =404; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } location ~* \.(gif|jpg|jpeg|mp4|mp3|wav|ogg|flv)$ { expires 30d; valid_referers *.domain1.com *.domain2.com ~\.baidu\.com; if ($invalid_referer) { rewrite ^/ http://domain1.com; #return 404; } } }
注意:
set $domain $2; root /var/www/$domain/public;
不能直接用
root /var/www/$2/public;
不然
location ~ \.php$
会解析错误
如果在一个server块中为一个站点配置多个二级域名
配置如下:
server { listen 80; server_name ~^(.+)?\.domain\.com$; index index.html;
# 将domain.com 重定向到 www.domain.com if ($host = domain.com){ rewrite ^ http://www.domain.com permanent; } root /data/wwwsite/domain.com/$1/; }
站点目录结构如下:
/data/wwwsite/domain.com/www/ /data/wwwsite/domain.com/nginx/
标签:gif files nginx配置文件 name wav fas index.php dex www
原文地址:http://www.cnblogs.com/czorg/p/6783557.html