Как развернуть приложение Net Core в IIS и доступ вне локальной сети - PullRequest
0 голосов
/ 19 сентября 2019

Я развернул свое веб-приложение в IIS сервера, добавил правило в брандмауэр и добавил переадресацию портов на IP-адрес сервера.Теперь, просматривая приложение по внешней ссылке и после входа в систему, я перешел на страницу, которая выполняет ajax post-запрос к действию (имеет атрибут authorize) после загрузки контента.Похоже, что приложение не распознало куки и не разрешило мне доступ к действию, поэтому ajax возвращает 302 найденных и перенаправляет на страницу входа.Как я могу решить эту проблему?

Я пытался добавить ниже код

Cookie.SameSite = SameSiteMode.None 

, но ничего не изменилось.Также я попытался удалить атрибут authorize, и он успешно возвращает нужные мне данные, поэтому я предполагаю, что файлы cookie не были распознаны.

ОБНОВЛЕНИЕ:

Вот мои ConfigureServices

services.ConfigureApplicationCookie(options =>
{
 options.AccessDeniedPath = "/Error/Index";
 options.Cookie.Name = "site";
 options.ExpireTimeSpan = TimeSpan.FromDays(1);
 options.LoginPath = "/account/Index";
 options.LogoutPath = "/account/Index";
 options.Cookie.SameSite = SameSiteMode.None;
});

services.AddCors(opt => opt.AddPolicy("Policy", builder =>
{
 builder.AllowAnyHeader();
 builder.AllowAnyMethod();
 builder.AllowAnyOrigin();
 builder.AllowCredentials();
}));

Вот метод Configure

 app.UseStaticFiles();
 app.UseAuthentication();
 app.UseSession();
 app.Use(async (context, next) => {
         var myService = context.RequestServices.GetService<IUser>();
         await myService.Current(context.User);
         await next.Invoke();
 });
 app.UseCors("Policy");
 app.UseMvc(routes =>
 {
   routes.MapRoute(
   name: "default",
   template: "{controller}/{action}/{id?}",
   defaults: new { controller = "Home", action = "Index" });
});

Вот заголовки запроса запроса

Вот заголовки ответа запроса

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...