1

我有一个在 Vagrant 开发环境中运行的 Wordpress 站点。当我加载时http://localhost:8080,该站点正常运行,但是一旦我尝试通过转到 访问管理员http://localhost:8080/wp-admin,我就会被重定向到http://localhost/wp-admin/

这里有两件事:

  1. 有些东西(Wordpress?)正在强制使用斜杠(这很好,除了......)。
  2. 在尾部斜杠重定向中,端口丢失(这非常不好)。

我已经尝试添加port_in_redirect我在其他类似问题的答案中看到的指令(老实说,使用两个值),但它没有任何改变。这似乎是一个 Wordpress,咳咳,功能,但我找不到任何东西来解释它的目的或帮助我防止它破坏东西。我希望有人能帮忙。

我的 Nginxserver块:

server {
  listen      80;
  server_name localhost;
  root        /vagrant/www;
  index       index.php;

  access_log /var/log/nginx/project.vm.access.log;
  error_log  /var/log/nginx/project.vm.error.log;

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

  # Add trailing slash to */wp-admin requests so the admin interface
  # works correctly. I've tried with and without this. No difference.
  rewrite /wp-admin$ $scheme://$host$uri/ permanent;

  location ~ \.php$ {
    fastcgi_split_path_info ^(.+\.php)(/.+)$;
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_index index.php;
    include fastcgi_params;
  }

  # Cache static files
  location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
    expires max;
    log_not_found off;
  }

  location = /favicon.ico {
    access_log off;
    log_not_found off;
  }
  location = /robots.txt {
    access_log off;
    log_not_found off;
    allow all;
  }

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

  location ~ ~$ {
    access_log off;
    log_not_found off;
    deny all;
  }
}

在我的wp-config.php文件中,我设置了WP_HOMEWP_SITEURL常量。

define('WP_HOME','http://localhost:8080');
define('WP_SITEURL','http://localhost:8080');

知道我错过了什么吗?

4

1 回答 1

0

我最近在将 WordPress 安装从服务器移动到本地 Vagrant 实例后遇到了同样的问题并解决了它添加:

define('RELOCATE',true);

到 wp-config.php 文件并转到http://localhost:8080/wp-login.php

我在http://codex.wordpress.org/Changing_The_Site_URL#Relocate_method找到了解决方案,我认为您可以找到其他一些方法来处理将 WP 安装从一台服务器移动到另一台服务器的问题。

于 2013-02-08T17:08:29.550 回答