`
icarusli
  • 浏览: 524062 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

nginx二级域名匹配根目录下的子文件夹

    博客分类:
  • WEB
阅读更多

绑定域名
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;
}

}
}

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics