Magento 如何在端口转发-docker容器中处理重定向url

Magento 如何在端口转发-docker容器中处理重定向url,magento,redirect,docker,docker-container,Magento,Redirect,Docker,Docker Container,我在docker容器中构建magento应用程序,我正在尝试使用docker端口转发从远程计算机访问该容器 系统A 创建容器:docker run-it-d-p 8000:80-h tm.gworks.mobi-v/var/www/public-privileged-name testmachineone magedev 集装箱ip:172.17.0.2 系统A ip:192.168.1.6 我可以使用系统A中的两个ip访问Web服务器http://172.17.0.2&&http://192.

我在docker容器中构建magento应用程序,我正在尝试使用
docker端口转发从远程计算机访问该容器

系统A 创建容器:
docker run-it-d-p 8000:80-h tm.gworks.mobi-v/var/www/public-privileged-name testmachineone magedev

集装箱ip:
172.17.0.2

系统A ip:
192.168.1.6

我可以使用系统A中的两个ip访问Web服务器
http://172.17.0.2
&&
http://192.168.1.6:8000

注意:如果我访问
http://192.168.1.6:8000
它将自动重定向到
http://172.17.0.2
这是magento的默认行为

系统B 如果我访问
http://192.168.1.6:8000
它将自动重定向到
http://172.17.0.2
系统B无法访问
http://172.17.0.2
因此它抛出404错误

根据我的搜索,我们无法从远程主机访问docker容器ip,唯一的方法是端口转发。但我坚持在端口转发中使用URL重定向


如何解决此问题?

系统B不需要访问172.17.0.2。通过指定
-p 8000:80
,您的内部容器(地址172.17.0.2)将可通过地址192.168.1.6:8000的主机A访问。从主机B的角度来看,您的容器(magento)似乎运行在ip 192.168.1.6上。当我访问系统B中的
192.168.1.6:8000
时,它会重定向到
172.17.0.2
,因此系统B抛出404错误。我无法停止重定向,因为这是magento的默认行为。如果您需要进一步澄清,请随时在评论中提及。我将更新:-)这是一个magento配置问题。可能有一些选项可以在启动时将主机ip指定给magento。我提出这个问题的目的是为了在类似上述场景的端口转发中通常如何处理重定向。您已经按照上面的代码正确处理了端口转发。上面的代码中没有要更正的内容。正如我所说,问题可能是magento配置问题。system B不需要访问172.17.0.2。通过指定
-p 8000:80
,您的内部容器(地址172.17.0.2)将可通过地址192.168.1.6:8000的主机A访问。从主机B的角度来看,您的容器(magento)似乎运行在ip 192.168.1.6上。当我访问系统B中的
192.168.1.6:8000
时,它会重定向到
172.17.0.2
,因此系统B抛出404错误。我无法停止重定向,因为这是magento的默认行为。如果您需要进一步澄清,请随时在评论中提及。我将更新:-)这是一个magento配置问题。可能有一些选项可以在启动时将主机ip指定给magento。我提出这个问题的目的是为了在类似上述场景的端口转发中通常如何处理重定向。您已经按照上面的代码正确处理了端口转发。上面的代码中没有要更正的内容。正如我所说,问题可能是magento配置问题。