Docker中的Apache不会提供laravel站点

我有一个docker-compose的问题。 我正在使用docker-compose的开发configuration。

我的docker-compose.yml:

version: '3' services: # base de données mysql database: image: mysql:5.7 container_name: mysql57_Adhesion ports: - 3306:3306 expose: - 3306 volumes: - /data/dev/docker/composePhpAdhesion/database:/var/lib/mysql environment: - MYSQL_ROOT_PASSWORD=myPassword # apache 2.4 et php 5.6 fourni par le fichier Dockerfile php: build: . container_name: apache24_php56_Adhesion ports: - "80:80" - "443:443" volumes: - /data/devPhp/workspace:/var/www/html links: - database environment: PMA_HOST: database PMA_PORT: 3306 

我将apache / var / www / html挂载到机器上的特定目录/ data / devPhp / workspace。

它工作倒灌简单的Apache的conf文件(000-default.conf):

  DocumentRoot /var/www/html ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined <Directory /var/www/html> Options Indexes FollowSymLinks Includes ExecCGI AllowOverride All Require all granted </Directory> 

在这种情况下 :

  • HTTP://localhost/adhesion/public/info.php
  • HTTP://localhost/info.php

作品。

但是对于laravel 5我需要一个特定的documentroot目录:

  DocumentRoot /var/www/html/adhesion/public ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined <Directory /var/www/html/adhesion/public> Options Indexes FollowSymLinks Includes ExecCGI AllowOverride All Require all granted # RewriteEngine On # RewriteRule ^(.*)$ public/$1 [L] </Directory> 

它不工作…这个url:

  • HTTP://localhost/adhesion/public/info.php
  • HTTP://本地主机/粘附/

404错误失败…

提前感谢您的任何想法。

编辑/ UPDATE:

改进格式

Apache的重写是laravel必不可less的!

如何在Apache 2.4上启用mod_rewrite?

与url http:// localhost / adhesion / mod_rewrite工作!

Interesting Posts