#php #mongodb #database-connection #ip
#php #mongodb #подключение к базе данных #ip
Вопрос:
Я пытаюсь подключиться к серверу mongodb в моем php-файле, который находится на моем локальном сервере. Сервер mongodb находится на другом сервере, IP которого я знаю. На сервере для mongodb не установлены имя пользователя и пароль. Я также установил драйвер php для mongodb, как это требуется в моей системе.
Mongodb отлично работает на сервере. Я это проверил.
Когда я запускаю свой php-скрипт, он выдает ошибку: * Веб-сайт обнаружил ошибку при получении http://localhost/test/mongo_test.php . Возможно, он отключен для обслуживания или неправильно настроен.*
Есть ли что-нибудь еще, что мне нужно настроить? Если да, то где? а также каким образом?
Комментарии:
1. какой код в mongo_test.php ?
2. Привет @srijan, покажи нам код, который ты запускаешь.
3. Можете ли вы показать нам код, который вы используете для подключения к MongoDB.
Ответ №1:
На сервере, скорее всего, установлен брандмауэр, не разрешающий доступ извне к определенному порту, на котором работает MongoDB, в целях безопасности.
Ответ №2:
Нам пришлось установить bind_ip: 0.0.0.0 в конфигурационном файле.
Подробнее читайте здесь: https://docs.mongodb.com/manual/reference/configuration-options/#file-format
«Для привязки ко всем адресам IPv4 вы можете указать ip-адрес привязки 0.0.0.0. Для привязки ко всем адресам IPv4 и IPv6 вы можете указать ip-адрес привязки ::,0.0.0.0 или, альтернативно, использовать новый параметр net.bindIpAll или новую опцию командной строки —bind_ip_all.»
https://docs.mongodb.com/manual/core/security-mongodb-configuration/