У меня возникли трудности с настройкой Nginx с PHP и MYSQL на Mac, где я не могу подключиться к базе данных. Если я создаю сервер с помощью php -S, я могу подключиться без проблем. Однако Nginx, работающий на порту 8080, вообще не может подключиться.
Я установил (а теперь удалил) php с brew, что может быть проблемой, потому что похоже, что PHP установлен на Mac. Запуск php -v показывает, что я работаю на 7.1.16, но установленная версия brew была 7.2+. У меня PHP-FPM работает на localhost: 9000.
Я проверил свои файлы php.ini, но вижу только расширения для mysqli и pdo_mysql, которые я пытался включить, но все равно не повезло.
Спасибо за любую помощь.
Я просматривал журналы, но не нашел ничего полезного. Вы знаете другое место, где PHP может хранить журналы, кроме / var / log?
нет, я имею в виду, предположительно, это будет в ваших журналах nginx. /var/log/nginx/error.log наверное?
Не похоже, что через Nginx регистрируются какие-либо ошибки.
Может быть, я неправильно понимаю - можете ли вы подключиться к странице php на своем сервере nginx? Если да, то можете ли вы попробовать подключиться к mysql с помощью php? Вы должны получить сообщение об ошибке там, а не в журналах (при условии, что у вас есть отчет об ошибках на всем пути).
Я могу подключиться к php с помощью nginx, но php не может подключиться к mysql. У меня есть запись ошибок в моем файле php.ini. Я также пытался установить местоположение журнала ошибок, но он все еще не создает журнал.
Верно, но когда вы используете $mysqli = @new mysqli('localhost', 'fake_user', 'my_password', 'my_db'); die('Connect Error: ' . $mysqli->connect_error); или как бы то ни было, вы подключаетесь к php, он должен отображать ошибку прямо на вашей веб-странице. Забудьте на мгновение о журналах.
Вы пробовали использовать Docker? Это может быть полезно на Mac, чтобы избежать установки на нем большого количества программного обеспечения.
У меня есть приложение, настроенное с помощью Docker, но я предпочитаю запускать напрямую. Вывод ошибки дает: Данный файл или каталог отсутствует
Я должен согласиться с @Hooli - предпочтете вы или нет, вам будет намного проще с Docker. Ваша ошибка вообще не является ошибкой mysql, поэтому, к сожалению, я даже не знаю, что вам начать.
Вы знаете, что когда вы запускаете php из командной строки, это не php-fpm, верно? Они полностью идентичны по первым трем буквам названия программы, но не более того.






Какое сообщение об ошибке появляется при попытке подключения?