首页 > 解决方案 > virtualmin 上的服务器不断重定向到错误的网站 com WP 多站点

问题描述

当我启用 MultiSite Wordpress 时,它重定向到 Virualmin 网站之一

我试图把它作为一个子域,我将它注册为 DNS。作为一个子目录,我尝试将它包含在 NGINX 设置中。

######### subdirectory #######

 location / {
            index index.php index.html index.htm;
            try_files $uri $uri/ /index.php?q=$uri&$args;
    }
location /layout-1/ {
            index index.php;
            try_files $uri $uri/ /layout-1/index.php?q=$uri&$args;
    }    
         
location ~ \.php$ {
        try_files $uri =404;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
  ########## use this or this depends on the configuration ######
1 - ###     fastcgi_pass unix:/run/php/php7.3-fpm.sock;
2 - ###  fastcgi_pass localhost:8009;
########################################################
       fastcgi_pass unix:/run/php/php7.3-fpm.sock;
        fastcgi_index index.php;
        include fastcgi_params;
        fastcgi_read_timeout 3000;

;

BIND 应该在域中具有外部 IP 还是内部 IP?我对所有服务器只使用一个 IP,在 BIND 中所有域都使用外部 IP。(问题是它应该是外部IP还是内部IP)。

NGINX 会有什么配置吗?如何删除 IP 并只放 (listen IP: 80) 而不是 (listen 288.218.198.981:80)

但是哪种配置通常会起作用?所以你总是可以避免复杂的编辑......例如......创建内部子域后......

标签: wordpressnginxredirectbindvirtualmin

解决方案


您必须以相同的方式在 nginx 中使用所有绑定指令。您可以通过 2 种方式在 nginx 中使用 bind 指令:

listen server_ip:80;

listen 80;

想法是您必须在 nginx 虚拟主机中的任何地方以一种或另一种方式使用它。如果混合使用它们(一个 nginx vhost 使用listen ip:80;和其他listen 80;),将导致某些域无法正确重定向或加载。

如果您的服务器有私有 ip,则使用私有 ip。如果服务器有公共 ip,则使用公共 ip。您只需要决定要使用哪种语法。

如果您有多个 IP 地址分配给您的服务器,我建议您使用监听 ip:80;方法


推荐阅读