Как подключить веб-API C#, который работает на сервере Windows IONOS, к базе данных MySQL IONOSC#

Место общения программистов C#
Ответить
Anonymous
 Как подключить веб-API C#, который работает на сервере Windows IONOS, к базе данных MySQL IONOS

Сообщение Anonymous »

Я хочу запустить веб-API C# на своем сервере IONOS Windows. Веб-API должен обрабатывать запросы от настольных приложений и веб-страниц. Чтобы предоставить эту услугу, я хочу соединить свой API с базой данных MySQL.
Кроме того, я использую следующую строку производственного подключения (Я, конечно, обменялся данными, важными для безопасности ):

Код: Выделить всё

"Production": "server=db1234567890.hosting-data.io;port=3306;database=dbs12345678;username=dbu123456;password=MySecurePassword"
Эта страница помогла мне узнать, что IONOS защитила свои серверы баз данных для внешнего доступа:
https://mycsharp.de/forum/threads/123946/kein-externes -zugriff-auf-die-mysql-datenbank-bei-ionos (последний доступ: 28.09.24)
Проблема в том, что с одной стороны IONOS защитила свои серверы для внешнего доступа к БД, и это хорошо и полезно. Но с другой стороны, я не могу получить доступ к базе данных на своем сервере.
К сожалению, у меня нет доступа к выводу консоли, но я получаю код состояния:

Код: Выделить всё

HTTP Error 403.14 - Forbidden
когда я вхожу в домен API.
Когда я пробую использовать веб-API локально на своем рабочем столе с помощью локальной строки подключения, API работает правильно. Более того, я могу подключиться к базе данных через PHP-скрипт по умолчанию из самого IONOS:
https://www.ionos.com/help/hosting/usin ... -to-mysql- Databases-using-php-code-examples/ (Последний доступ: 28.09.24)
Строка локального подключения:

Код: Выделить всё

"DefaultConnection": "server=localhost;port=3306;database=exampledb;username=root;password=MySecurePassword;"
Вот код, который находится в файле Program.cs:

Код: Выделить всё

if (builder.Environment.IsDevelopment())
{
connectionString = builder.Configuration.GetConnectionString("DefaultConnection");

builder.Services.AddDbContext(options =>
{
options.UseMySql(connectionString, ServerVersion.AutoDetect(connectionString));

});
}
else
{
if (builder.Environment.EnvironmentName.Equals("Production"))
{
connectionString = builder.Configuration.GetConnectionString("Production");

builder.Services.AddDbContext(options =>
{
options.UseMySql(connectionString, ServerVersion.AutoDetect(connectionString));

});
}
}
Спасибо за помощь,
FloFlo


Подробнее здесь: https://stackoverflow.com/questions/790 ... er-to-a-io
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»