【发布时间】:2019-09-20 04:28:31
【问题描述】:
我在同一个 apache 容器中有两个 php 应用程序,我正在尝试在端口上运行其中一个,因为它需要通过根域而不是子文件夹进行访问。
我想在端口 8060 上运行应用程序,我尝试使用 apache 虚拟主机执行此操作,但它不会加载页面 (http://192.168.99.100:8060/),它只是说连接被拒绝。然而,普通的根 ip - http://192.168.99.100 工作正常。 我的docker文件如下
version: '3.2'
services:
php-apache:
build:
context: ./apache-php
ports:
- 80:80
- 8060:8060
expose:
- '8060'
volumes:
- ./DocumentRoot:/var/www/html:z
我的 apache 配置
<VirtualHost *:60>
DocumentRoot /var/www/html/api
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
任何帮助将不胜感激。
【问题讨论】:
-
您的
VirtualHost块与您的ports:块不匹配;我认为您还需要在 Apache 配置中使用Listen指令。 (expose:块是多余的。) -
这与 PHP、Laravel 或 Docker 有什么关系?请不要使用不必要的标签
-
@NicoHaase 我明白你在说什么,但是答案可能与它们中的任何一个标签都没有关系,但它是一个运行 Php Laravel 的 docker 容器,我不知道问题与什么直接相关。