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工作!