如何设置多站点(使用子目录)以使其他子目录位于主站点所在的同一顶级文件夹中?

时间:2017-02-24 09:46:43

标签: wordpress

如何设置multisite(使用子目录)以使其他子目录位于主站点所在的同一顶级文件夹中?

基本设置

基本设置如下:example.com/example。这是我创建的multisite网络的主要网站。

使用multisite

结构

注意:example.com不是MAIN页面。 Wordpress安装在子文件夹(/site1

MAIN: /site1
  |- SUB: /site2
  |- SUB: /site3

问题

/site2的网址为example.com/site1/site2

所需输出

/site2的网址为example.com/site2

问题

有一个很好的方法吗?我做了一些研究,但我没有找到任何有效的方法:所以请一步一步解释。

1 个答案:

答案 0 :(得分:0)

如果我理解你的问题,你需要这个:

1选择WordPress多站点模式

2更新wp-config.php以使用子指挥

vim /var/www/example.com/htdocs/wp-config.php

define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', false);
$base = '/';
define('DOMAIN_CURRENT_SITE', 'example.com');
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);

3个子目录中具有子目录的WordPress-Multisite的Nginx配置

 server {
    server_name example.com ;

    access_log   /var/log/nginx/example.com.access.log;
    error_log    /var/log/nginx/example.com.error.log debug;

    root /var/www/example.com/htdocs ;
    index index.php;

    if (!-e $request_filename) {
            rewrite /wp-admin$ $scheme://$host$uri/ permanent;         
            rewrite ^/wordpress(/[^/]+)?(/wp-.*) /wordpress$2 last;      
            rewrite ^/wordpress(/[^/]+)?(/.*\.php)$ /wordpress$2 last;
    }

    location / {
            try_files $uri $uri/ /wordpress/index.php?$args ;
    }

    location ~ \.php$ {
            try_files $uri /wordpress/index.php;
            include fastcgi_params;
            fastcgi_pass 127.0.0.1:9000;
    }

    location ~* ^.+\.(ogg|ogv|svg|svgz|eot|otf|woff|mp4|ttf|rss|atom|jpg|jpeg|gif|png|ico|zip|tgz|gz|rar|bz2|doc|xls|exe|ppt|tar|mid|midi|wav|bmp|rtf)$ {
            access_log off; log_not_found off; expires max;
    }

    location = /robots.txt { access_log off; log_not_found off; }
    location ~ /\. { deny  all; access_log off; log_not_found off; }