【发布时间】:2018-08-07 00:27:28
【问题描述】:
我有一个 带有 Docker 的 WordPress 开发环境。就是这么简单,只需要一个docker compose with Wordpress 和MySQL。
这是我的 docker-compose 文件。一切都很完美,起初我可以在 localhost:8080
中看到我的 WordPressversion: '3.1'
services:
wordpress:
image: wordpress
restart: always
ports:
- 8080:80
volumes:
- /Users/ivan/Developer/theme:/var/www/html/wp-content/themes/theme
environment:
WORDPRESS_DB_PASSWORD: password
mysql:
image: mysql:5.7
restart: always
environment:
MYSQL_ROOT_PASSWORD: password
我还使用 Browser Sync 和 Gulp 来实时重新加载网站。我在浏览器同步设置中配置了一个 proxy,然后我可以在 localhost:3000 和 my_local_ip:3000 中看到我的 WordPress 并实时重新加载。
browsersync: {
browser: 'google chrome',
proxy: "localhost:8080",
},
问题是我在 WordPress 网址设置中做了一些更改(然后我恢复了它),但现在重定向效果不佳。
如果我尝试访问 localhost:8080 或 my_local_ip:3000,浏览器总是会重定向到 localhost:3000 并显示“重定向过多”错误。 (即使 BrowserSync 和 Docker 关闭)。
运行 Docker 和 BrowserSync,my_local_ip:3000/wp-admin 和 localhost:3000/wp-admin 完美运行,但我看不到我的博客。 localhost:3000 总是显示错误。
我已经尝试清除浏览器缓存,但没有解决。我现在不知道 Docker、BrowserSync 或 MacOS(High Sierra 是我的操作系统)的错误或错误配置
【问题讨论】:
-
我认为问题出在您的 Wordpress 配置上。如果它正在工作并且在您更改某些配置后开始循环重定向,请确保它是 Wordpress。我不是 Wordpress 专家,但我知道 Wordpress 在数据库中保存了一些硬编码的 URL。看看是否每个 URL 都配置正确。祝你好运!
-
是的,但奇怪的是即使在 Docker 容器(WordPress 和 MySQL)关闭的情况下重定向也有效。
-
你试过“私人模式”吗?
-
可以,但没有解决
-
清除缓存通常不会清除重定向(是的,这很痛苦)。您可以在控制台
fetch('http://localhost:{port}', {method: 'post'}).then(() => {})中运行,这应该会清除缓存。
标签: wordpress macos docker localhost browser-sync