Доступ к Mon go DB с использованием обратного прокси с использованием IIS - PullRequest
0 голосов
/ 09 апреля 2020

Мы пытаемся получить доступ к базе данных mon go, используя настройку обратного прокси-сервера в IIS.

Следуя приведенным инструкциям здесь , настройте обратный прокси-сервер в IIS.

В рамках правил входящих операций мы предоставляем сведения о сервере БД Mon go в следующем формате: Mongoservername: 27017.

Но мы не можем подключиться к mongodb с помощью веб-сайта IIS, где обратный прокси-сервер настроен.

Сведения об ошибке:

NETWORK [js] recv (): сообщение msgLen 1347703880 недопустимо. Мин 16 Макс: 48000000

NETWORK [js] DBClientConnection не удалось получить сообщение от Servername: port - ProtocolError: recv (): сообщение msgLen 13477038 80 недопустимо. Мин 16 Макс: 48000000

E QUERY [js] Ошибка: ошибка сети при попытке выполнить команду 'isMaster' на хосте 'имя_сервера: порт' :connect@src/mongo/shell/mongo.js

Используемые команды:

Пн go --host --port --user user --password пароль (имя_сервера, где настроен обратный прокси-сервер IIS)

Настройка обратного прокси-сервера:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <rewrite>
            <rules>
                <rule name="ReverseProxyInboundRule1" stopProcessing="true">
                    <match url="(.*)" />
                    <action type="Rewrite" url="{C1}://mongoserver:27017/{R:1}" />
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
</configuration>

Однако при обращении к следующему URL: в браузере мы получаем следующее сообщение: похоже, вы пытаетесь получить доступ к MongoDB через HTTP через порт встроенного драйвера.

Можем ли мы получить доступ к mongodb с помощью этого подхода ?

Заранее спасибо.

1 Ответ

0 голосов
/ 15 апреля 2020

IIS URL rewrite не обрабатывает tcp-соединения. Удалось добиться с помощью Nginx потоков.

...