programing

다중 사이트 WordPress 설치의 하위 사이트에서 wp-admin에 액세스하면 리디렉션이 너무 많이 발생하는 이유는 무엇입니까?

newstyles 2023. 8. 17. 20:59

다중 사이트 WordPress 설치의 하위 사이트에서 wp-admin에 액세스하면 리디렉션이 너무 많이 발생하는 이유는 무엇입니까?

멀티사이트 워드프레스를 설치하느라 애를 먹고 있습니다.저는 약 2주 동안 그것을 작업했고 많은 오류를 범했습니다.저는 포럼, 블로그 및 도움말 기사를 숙독하고 가능한 제안을 시도했습니다.진전이 있었지만, 아직 완전히 효과를 거두지 못하고 있습니다.

URL 정보

환경

  • Gentonginx MariaDB 워드프레스
  • nginx 구성 파일 위치:/etc/nginx/nginx.conf
  • root example.com 폴더 위치:/var/www/localhost/htdocs
  • WordPress는 다음 위치에 설치됩니다./var/www/localhost/htdocs/wordpress

현재 문제

  • https://www.draggoo.com/wordpress/kevin 에는 포맷이 없습니다.

  • https://www.draggoo.com/wordpress/kevin/wp-admin/ 은 많은 리디렉션을 보여줍니다.

기타 현재 동작

  • https://www.draggoo.com/wordpress 가 작동합니다.

  • https://www.draggoo.com/wordpress/wp-admin 가 작동합니다.

파일

(중요한 정보가 삭제됨)

nginx.conf

---Code Removed---
http {
---Code Removed---
        map $uri $blogname{
                ~^(?P<blogpath>/[^/]+/)files/(.*)       $blogpath ;
        }

        map $blogname $blogid{
                default -999;
                kevin 2;
        }

        # Redirect all http requests to https
---Code Removed---
        # Adding this to redirect all non-www.-having URLs to www.
---Code Removed---

        # Server settings for all https requests
        server {
---Code Removed---

                root /var/www/localhost/htdocs;
                location ~ ^(/[^/]+)?/files/(.+) {
                        try_files /wordpress/wp-content/blogs.dir/$blogid/files/$2 /wordpress/wp-includes/ms-files.php?file=$2 ;
                        access_log off;     log_not_found off; expires max;
                }

                #avoid php readfile()
                location ^~ /wordpress/blogs.dir {
                        internal;
                        alias /var/www/localhost/htdocs/wordpress/wp-content/blogs.dir ;
                        access_log off;     log_not_found off; expires max;
                }

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

                location ^~ /wordpress {
                        index index.php index.html index.htm;
                        try_files $uri $uri/ /wordpress/index.php?$args;

                        location ~ \.php$ {
                                fastcgi_split_path_info ^(.+\.php)(/.+)$;
                                include /etc/nginx/fastcgi.conf;
                                try_files $uri =404;
                                fastcgi_pass unix:/run/php-fpm.socket;
                        }
                }

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

                location ~ \.php$ {
                        include /etc/nginx/fastcgi.conf;
                        try_files $uri =404;
                        fastcgi_pass unix:/run/php-fpm.socket;
                }
        }
}

wp-config.dll

---Code Removed---
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', '/tmp/wp-debug.log');

/* Always use HTTPS */
$_SERVER['HTTPS']='on';

/** SSL */   
define('FORCE_SSL_ADMIN', true);

/* Multisite */
define('WP_ALLOW_MULTISITE', true);
define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', false);
define('DOMAIN_CURRENT_SITE', 'www.draggoo.com');
define('PATH_CURRENT_SITE', '/wordpress/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);

/* That's all, stop editing! Happy publishing. */
---Code Removed---

db.wp_http.집입니다

https://www.draggoo.com/wordpress

db.wp_2_message.집입니다

https://www.draggoo.com/wordpress/kevin

db.wp_http.사이트 URL

https://www.draggoo.com/wordpress

db.wp_2_message.사이트 URL

https://www.draggoo.com/wordpress/kevin

db.wp_dll

+---------+---------+-----------------+-------------------+
| blog_id | site_id | domain          | path              |
+---------+---------+-----------------+-------------------+
|       1 |       1 | www.draggoo.com | /wordpress/       |
|       2 |       1 | www.draggoo.com | /wordpress/kevin/ |
+---------+---------+-----------------+-------------------+

.htaccess

나는 nginx를 사용하기 때문에 이 파일을 삭제했습니다.

언급URL : https://stackoverflow.com/questions/62419243/why-does-accessing-wp-admin-in-a-subsite-of-a-multisite-wordpress-install-result