绑定域名
server_name *.abcd.com;
获取主机名
if ( $host ~* (.*)\.(.*)\.(.*))
{
set $domain $1;
}
定义目录
root html/abc/$domain/;
location /
{
root html/abcd/$domain;
index index.html index.php;
}
--------------------------------------------------------------------------
域名 www.domain.com
路径 /home/www/
在/home/www/下文件夹 如何绑定 domain相应的二级域名呢?
比如 /home/www/linuxtone/ 绑定 linuxtone.domain.com这样的二级域名,而设置www.domain.com下相关的文件夹可以直接访问,如 /home/www/css/ 可以直接用www.domian.com/css/访问
采用如下的方法可以实现绑定相应的二级域名,但是没有办法设置可以访问www.domian.com下的文件夹
server_name *.abcd.com;
获取主机名
if ( $host ~* (.*)\.(.*)\.(.*))
{
set $domain $1;
}
定义目录
root html/abc/$domain/;
location /
{
root html/abcd/$domain;
index index.html index.php;
}
怎么配置相应的nginx.conf文件
--------------------------------------------------------------------------
经过两天恶补正则表达式 & 研究debug log后,彻底解决二级目录部署magento的 rewrite问题,关键在于fast cgi 的param request_uri
说明下,/work/work是我的web_root目录
/work/work/WebSite是放了magento的目录
192.168.0.111是我本机的IP
php-cgi 跑在9000端口
nginx+fastcgi php都好像快不到哪里去,windows也就这样了
worker_processes 2;
worker_rlimit_nofile 51200;
events
{
worker_connections 51200;
}
http
{
include mime.types;
default_type application/octet-stream;
#charset gb2312;
server_names_hash_bucket_size 128;
client_header_buffer_size 32k;
large_client_header_buffers 4 32k;
client_max_body_size 8m;
sendfile on;
tcp_nopush on;
keepalive_timeout 60;
tcp_nodelay on;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
fastcgi_buffer_size 64k;
fastcgi_buffers 4 64k;
fastcgi_busy_buffers_size 128k;
fastcgi_temp_file_write_size 128k;
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.0;
gzip_comp_level 2;
gzip_types text/plain application/x-javascript text/css application/xml;
gzip_vary on;
server {
listen 80;
server_name 192.168.0.111; #修改为你的服务器名
#access_log /var/log/nginx/access.log ;
root /work/work;
autoindex on;
#setting for magento
location ~* /website/(.*)\.(png|gif|jpg|jpeg|css|js|swf|ico)$ {
access_log off;
expires 30d;
}
#setting for multi store in magento
location ~* ^/website/cctvhotdeals {
if (!-e $request_filename) {
rewrite ^(.+)$ /WebSite/cctvhotdeals/index.php last;
}
fastcgi_pass 192.168.0.111:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_param SCRIPT_FILENAME /work/work$fastcgi_script_name;
include fastcgi_params;
access_log off;
expires 30d;
}
location ~* ^/website/js/index.php {
fastcgi_pass 192.168.0.111:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_param SCRIPT_FILENAME /work/work$fastcgi_script_name;
include fastcgi_params;
access_log off;
expires 30d;
}
location ~* ^/website {
if (!-e $request_filename) {
rewrite ^(.+)$ /WebSite/index.php last;
}
fastcgi_pass 192.168.0.111:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_param SCRIPT_FILENAME /work/work$fastcgi_script_name;
include fastcgi_params;
}
#end of setting for magento
# pass the PHP scripts to FastCGI socket
location ~ \.php$ {
fastcgi_pass 192.168.0.111:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_param SCRIPT_FILENAME /work/work$fastcgi_script_name;
include fastcgi_params;
}
location / {
root /work/work;
index index.html index.htm index.php;
}
}
}