为什么我的 WordPress 网站重定向到不正确的 URL?
Why is my WordPress site redirecting to incorrect URL?
我是 运行 Apache 2.2 服务器的 Wordpress 4.1 实例。我所有的 wordpress 文件都在 /var/www/html/wordpress
目录中,所以我可以在 http://www.myurl.com/wordpress 访问它们。
Wordpress 也连接到不同服务器上的远程数据库。我的 wp-config.php
文件包含以下内容:
define('DB_NAME', 'my_db_name');
define('DB_USER', 'my_db_user');
define('DB_PASSWORD', 'my_db_password');
define('DB_HOST', 'db.dbhost.com');
define('DB_CHARSET', 'utf8');
define('DB_COLLATE', '');
网站的大部分工作正常,但如果我查看一些分页数据(例如,用户 table),然后当我单击转到下一页时,它会创建一个 link 使用 DB_HOST 而不是我的网站 URL.
例如,尝试访问用户的第二个页面会创建 URL http://db.dbhost.com/wordpress/wp-admin/users.php?paged=2 rather than http://myurl.com/wordpress/wp-admin/users.php?paged=2。如果我手动输入第二个 link,页面会按预期显示。
我该如何解决这个问题?
您可以通过将此添加到 wp-config.php
来覆盖选项 table 中设置的值:
define('WP_HOME','http://www.example.com/wordpress');
define('WP_SITEURL','http://www.example.com/wordpress');
我更喜欢为我的项目这样做,因为我可以为开发、暂存和生产环境设置不同的值,而不必弄乱数据库。
我找到了这个问题的答案。问题出在我的代理上,解决方案是将以下内容添加到我的 wp-config.php
文件中:
$_SERVER['HTTP_HOST'] = $_SERVER['HTTP_X_FORWARDED_HOST'];
$_SERVER['REQUEST_URI'] = str_replace("wordpress", "home",
$_SERVER['REQUEST_URI']);
在此处找到解决方案:https://wordpress.org/support/topic/wordpress-behind-reverse-proxy-1
我是 运行 Apache 2.2 服务器的 Wordpress 4.1 实例。我所有的 wordpress 文件都在 /var/www/html/wordpress
目录中,所以我可以在 http://www.myurl.com/wordpress 访问它们。
Wordpress 也连接到不同服务器上的远程数据库。我的 wp-config.php
文件包含以下内容:
define('DB_NAME', 'my_db_name');
define('DB_USER', 'my_db_user');
define('DB_PASSWORD', 'my_db_password');
define('DB_HOST', 'db.dbhost.com');
define('DB_CHARSET', 'utf8');
define('DB_COLLATE', '');
网站的大部分工作正常,但如果我查看一些分页数据(例如,用户 table),然后当我单击转到下一页时,它会创建一个 link 使用 DB_HOST 而不是我的网站 URL.
例如,尝试访问用户的第二个页面会创建 URL http://db.dbhost.com/wordpress/wp-admin/users.php?paged=2 rather than http://myurl.com/wordpress/wp-admin/users.php?paged=2。如果我手动输入第二个 link,页面会按预期显示。
我该如何解决这个问题?
您可以通过将此添加到 wp-config.php
来覆盖选项 table 中设置的值:
define('WP_HOME','http://www.example.com/wordpress');
define('WP_SITEURL','http://www.example.com/wordpress');
我更喜欢为我的项目这样做,因为我可以为开发、暂存和生产环境设置不同的值,而不必弄乱数据库。
我找到了这个问题的答案。问题出在我的代理上,解决方案是将以下内容添加到我的 wp-config.php
文件中:
$_SERVER['HTTP_HOST'] = $_SERVER['HTTP_X_FORWARDED_HOST'];
$_SERVER['REQUEST_URI'] = str_replace("wordpress", "home",
$_SERVER['REQUEST_URI']);
在此处找到解决方案:https://wordpress.org/support/topic/wordpress-behind-reverse-proxy-1