微擎的部署,BASE URL 调整为:/cmpmain/web/index.php 的实现

1、微擎的部署,现阶段其 HOME URL 为:https://cmpmain.xxx.com 。其 BASE URL 为:/web/index.php。如图1

图1

2、微擎的部署,希望调整一下,新阶段其 HOME URL 为:https://front.xxx.com 。以确保所有产品前端的域名统一。其 BASE URL 为:/cmpmain/web/index.php。

3、其 Nginx 配置文件如下

server {
    listen 80;
    charset utf-8;
    
    root /mcloud/cmp_main/;
    index  index.php;

    location /ncove/ {
        rewrite ^/ncove/(\d+)-(\d+)$ /app/index.php?i=$1&c=entry&tenantId=QYWX_YQ_TENANTID&link_id=$2&scope=snsapi_userinfo&do=index&m=thirdlink_generate permanent;
    }


 location ~/*\.txt$ {
        root   /mcloud/cmp_main/attachment/txt;
    }

   location = /meepo_bigerwall/shake{
        #default_type 'text/html';
        #lua_code_cache off;

        content_by_lua_file /etc/nginx/shake.lua;
    }
  location = /meepo_bigerwall/fksq{
        #default_type 'application/json';
        #lua_code_cache off;

        content_by_lua_file /etc/nginx/fksq.lua;
    }

    location / {
        if (!-e $request_filename) {
            rewrite ^/(.+)$ /index.php?url=$1 last;
            break;
        }
    }
    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    #
    location ~ \.php$ {
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  /mcloud/cmp_main/$fastcgi_script_name;
        include        fastcgi_params;
    }
    #error_page  404              /404.html;
    # redirect server error pages to the static page /50x.html
    #
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }
    # deny access to .htaccess files, if Apache's document root
    # concurs with nginx's one
    #
    location ~ /\.ht {
        deny  all;
    }
 location ~ ^/(status|ping)$ {
        include fastcgi_params;
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_param SCRIPT_FILENAME $fastcgi_script_name;
        access_log off;
        allow 127.0.0.1;
        allow 10.42.0.0/16;
        allow 10.244.0.0/16;
        deny all;
    }
}

4、决定将 /mcloud/cmp_main/ 迁移至 /mcloud/cmp_main/cmpmain/。

5、编辑 Nginx 配置文件如下

server {
    listen 80;
    charset utf-8;
    
    root /mcloud/cmp_main/;
    index  index.php;

    location /cmpmain/ncove/ {
        rewrite ^/cmpmain/ncove/(\d+)-(\d+)$ /cmpmain/app/index.php?i=$1&c=entry&tenantId=QYWX_YQ_TENANTID&link_id=$2&scope=snsapi_userinfo&do=index&m=thirdlink_generate permanent;
    }


 location ~/*\.txt$ {
        root   /mcloud/cmp_main/cmpmain/attachment/txt;
    }

   location = /cmpmain/meepo_bigerwall/shake{
        #default_type 'text/html';
        #lua_code_cache off;

        content_by_lua_file /etc/nginx/shake.lua;
    }
 location = /cmpmain/meepo_bigerwall/fksq{
        #default_type 'application/json';
        #lua_code_cache off;

        content_by_lua_file /etc/nginx/fksq.lua;
    }

    location / {
        if (!-e $request_filename) {
            rewrite ^/(.+)$ /index.php?url=$1 last;
            break;
        }
    }
    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    #
    location ~ \.php$ {
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  /mcloud/cmp_main/$fastcgi_script_name;
        include        fastcgi_params;
    }
    #error_page  404              /404.html;
    # redirect server error pages to the static page /50x.html
    #
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }
    # deny access to .htaccess files, if Apache's document root
    # concurs with nginx's one
    #
    location ~ /\.ht {
        deny  all;
    }
}

6、访问静态资源文件:https://front.xxx.com/cmpmain/web/resource/js/lib/jquery.caret.js ,响应成功。如图2

图2

7、访问动态文件:https://front.xxx.com/cmpmain/web/index.php?c=utility&a=tenantids&tenantid=channel ,响应成功。如图3

图3

8、编辑公众帐号,提交表单数据,响应成功。符合预期。如图4

图4

永夜