Laravel не работает, показывая страницу Apache по умолчанию на localhost. Не удалось изменить виртуальный хост
Я должен сделать приложение LAravel и доставить Dockerfile, но я действительно застрял с этим. До этого у меня была кошмарная хитрость, устанавливающая laravel на мою машину.
Я пытаюсь получить изображение dockervel и следую инструкциям здесь: http://www.spiralout.eu/2015/12/dockervel-laravel-development.html
У меня были проблемы раньше, и я внес изменения: Ошибка запуска прокси-сервера пользователя: прослушивание tcp0.0.0.0:3306: bind: адрес уже используется
Все хорошо до шага
исправить права доступа: dpermit Теперь у вас активна система регистрации. Перейдите на localhost и зарегистрируйте нового пользователя, чтобы убедиться, что базы данных работают нормально.
Когда я захожу на локальный хост, я получаю: Apache2 Ubuntu Default Page https://assets.digitalocean.com/articles/lamp_1404/default_apache.png
Я поймал это: когда я бегу
$ dcomposer-create
It gets to the end but I get this
Warning: This development build of composer is over 60 days old. It is recommended to update it by running "/usr/bin/composer self-update" to get the latest version.
Installing laravel/laravel (v5.2.31)
- Installing laravel/laravel (v5.2.31)
Downloading: 100%
Created project in /var/www
> php -r "copy('.env.example', '.env');"
Должен ли я перейти к их установке или сначала исправить это?
У меня уже есть проект laravel в var / www / laravel (в локальной среде laravel). И мой файл etc / hosts выглядит так:
127.0.0.1 laravel.example.com
127.0.1.1 me-Lenovo-Z50-75
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
127.0.0.1 laravel.example.com
И $ dcomposer-create создает приложение в dockervel / www /.
У меня есть изменения, внесенные dockervel.example.com.conf в / etc / apache2 / sites-available
<VirtualHost *:80>
ServerName dockervel.example.com
DocumentRoot /home/me/Desktop/dockerlaravel/dockervel/www/public
DirectoryIndex index.php
<Directory /home/me/Desktop/dockerlaravel/dockervel/www>
Options FollowSymLinks
AllowOverride None
</Directory >
<Directory >
AllowOverride All
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
И изменил / etc / hosts
127.0.0.1 dockervel.example.com
127.0.1.1 me-Lenovo-Z50-75
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
127.0.0.1 dockervel.example.com
Я также запускаю:
$ a2ensite dockervel.example.com
$ sudo service apache2 reload
И когда я бегу:
apachectl -S
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message
VirtualHost configuration:
*:80 is a NameVirtualHost
default server 127.0.1.1 (/etc/apache2/sites-enabled/000-default.conf:1)
port 80 namevhost 127.0.1.1 (/etc/apache2/sites-enabled/000-default.conf:1)
port 80 namevhost dockervel.example.com (/etc/apache2/sites-enabled/dockervel.example.com.conf:1)
port 80 namevhost laravel.example.com (/etc/apache2/sites-enabled/laravel.example.com.conf:1)
ServerRoot: "/etc/apache2"
Main DocumentRoot: "/var/www"
Main ErrorLog: "/var/log/apache2/error.log"
Mutex watchdog-callback: using_defaults
Mutex default: dir="/var/lock/apache2" mechanism=fcntl
Mutex mpm-accept: using_defaults
PidFile: "/var/run/apache2/apache2.pid"
Define: DUMP_VHOSTS
Define: DUMP_RUN_CFG
User: name="www-data" id=33
Group: name="www-data" id=33
И когда я продолжу установку
$ dnodejs nmp install - this is ok
$ dnodejs gulp install
[17:40:09] Using gulpfile /var/www/gulpfile.js
[17:40:09] Task 'install' is not in your gulpfile
[17:40:09] Please check the documentation for proper gulpfile formatting
Как видите, все идет в / var / www, но я хочу, чтобы он был в моем рабочем каталоге / home / me / Desktop / dockerlaravel / dockervel.
Я не вижу, в чем проблема, проблема?
1 ответ
Поскольку вы изменили порт на "8084", вам нужно перейти на localhost:8084. Если вы видите Apache по умолчанию, вы, вероятно, просматриваете другой сервер, так как dockervel построен на основе nginx.
У вас также, вероятно, есть пробелы в Docker. Не смешивайте локальное хранилище с хранилищем докеров. / var / www в контейнере отличается от вашего локального / var / www. в docker-compose.yml вы монтируете локальный ~ / dockervel / www в контейнеры / var / www.
Я бы посоветовал вам начать все заново и отменить изменения, которые вы внесли на свой сервер apache. Выключи, тебе это не нужно. Dockervel предоставит вам сервер NginX в контейнере.