Я следовал инструкциям по установке Valet, и он работал нормально первые 2 дня без каких-либо проблем. Потом из ниоткуда он перестал работать и только со временем только ухудшался. Сначала было 404 ошибки во всех проектах laravel за пределами их домашней страницы, и в итоге сайты перестали работать, как будто не работает веб-сервер.
Вот некоторые подробности о моей среде:
Запуск macOS Sierra, PHP 7.1, MariaDB
Композитор работает нормально и находится в пути
Valet 2.0.3 (последний на момент написания этой статьи)
Изменены MAMP на порты по умолчанию для освобождения портов 80 и 3306 перед первой установкой и запуском Valet
Pinging что-то.dev возвращает 127.0.0.1 как следует
Запуск чего-то в браузере не работает. D, если не работает веб-сервер.
После нескольких часов поиска, возни, удаления и переустановки всего я сейчас нахожусь в очень странной точке. Если MAMP работает на портах 80 и 3306, Valet будет что-то обслуживать .dev, хотя я все равно получу 404 за пределами домашней страницы. Как это может быть? Разве MAMP не должен быть на других портах, чтобы освободить 80 и 3306 для Valet или не работает вообще? Еще одна странная вещь — то, что some.dev вернет мой webroot, который находится на стоянке Valet, а не сайт some.dev, который находится под webroot.
Я искал высоко и низко, и я в растерянности относительно того, как я могу заставить вещи работать так, как они должны быть
Выполните следующие шаги, чтобы решить это:
Вы должны устранить неисправность вашего Nginx установка / настройка, так как это сервер позади Valet.
Я столкнулся с проблемой «valet not Обслуживание» с первым перезапуском, который произошел после установки камердинера.
первый проверьте, используете ли вы последнюю версию
$ brew update
$ brew upgrade
(если вы используете варево)
второй Протестируйте конфигурацию nginx, могут возникнуть проблемы с разрешениями:
$ nginx -t
— это возвращает пути «ошибки», которые не могут быть прочитаны. Например, вернет путь к вашему камердеру error.log или файлу conf. например:
2017/02/04 16:32:31 [emerg] 17285#0: open() "/Users/username/.valet/Log/nginx-error.log" failed (13: Permission denied)
Проверка файла: $ ls -l ~/.valet/Log/nginx-error.log
-rw-r--r-- 1 root staff 7842 Feb 4 15:54 ~/.valet/Log/nginx-error.log
Причина, по которой мой nginx не был запущен для обслуживания всех камердинеров, заключалась в том, что в моем домашнем каталоге журнал ошибок принадлежал корню. Измените права доступа для этого файла и, возможно, для других, используя команду chown (замените реальным именем пользователя):
$ sudo chown username:staff ~/.valet/Log/nginx-error.log
после изменения разрешений перезапустите nginx:
$ sudo nginx -s stop && sudo nginx
Если команда вернется
nginx: [error] invalid PID number "" in "/usr/local/var/run/nginx.pid"
, потому что nginx не запущен и не имеет PID, просто запустите nginx снова, используя:
$ sudo nginx
Теперь проверьте свои сайты камердинера. (пока MAMP остановлен)
Следующий. Определите порты и настройте Valet и MAMP для работы без конфликтов.
Надеюсь, это помогло.
Замечания: Пользователь: группа, которой должен принадлежать ваш файл журнала ошибок, можно найти в nginx.conf в директиве пользователя.
Других решений пока нет …