admin 发表于 2016-3-8 13:57

Nginx配置虚拟目录

       nginx貌似没有虚拟目录的说法,因为它本来就是完完全全根据目录来设计并工作的。 如果非要给nginx安上一个虚拟目录的说法,那就只有alias标签比较“像”,干脆来说说alias标签和root标签的区别吧。最基本的区别:alias指定的目录是准确的,root是指定目录的上级目录,并且该上级目录要含有location指定名称的同名目录。
上面要求官网要加一个二级虚拟目录来区分访问(程序是dedecms)、Nginx相对来说还是比较熟悉的,但是还是捣鼓了一上午。
配置如下:
server {
      listen       80;
      server_name127.0.0.1;
      root /var/www/dedecms;
      location/ilearning {
                alias/var/www/dedecms/;
      }
      location ~ ^/ilearning(.*\.php)$
      {
                alias /var/www/dedecms/$1;
                fastcgi_pass 127.0.0.1:9000;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include fastcgi_params;
                include fastcgi.conf;
      }
      location / {
            indexindex.html index.htm;
      }
      error_page   500 502 503 504/50x.html;
      location = /50x.html {
            root   html;
      }
    }

其实这样配置 还是有问题的导致有些css和js路径不对而无法加载,最后无奈 只能加上全局的匹配了。
备注:不知道是程序本神的问题还是Nginx没有配置好。

页: [1]
查看完整版本: Nginx配置虚拟目录