У меня есть простое действие, которое принимает один параметр в виде строки, возвращает страницу профиля пользователя, которая работает нормально.
Однако сегодня пользователь сказал мне, что никто не может видеть его профиль, если он не вошел в систему, он просто перенаправляет на страницу входа.
Я проверил файл журнала IIS7 и вижу, что он возвращает состояние 302, а затем загружает страницу входа.
Вот страница, которая не работает:
http://www.house -mixes.com / профиль / mixchemist /
Вот пример, который отлично работает:
http://www.house -mixes.com / профиль / housemixes /
Нет атрибутов авторизации на действии / контроллере, у меня установлена Helicon Ape, управляющая некоторыми пользовательскими перенаправлениями для меня, но я отключил это и все еще получаю тот же результат.
Я довольно озадачен тем, что может вызвать это только для определенного профиля, есть идеи?
EDIT:
Определенно нет атрибутов Авторизации на любом уровне, по умолчанию или на заказ. Мой web.config довольно стандартный, и я использую MVC2:
<authentication mode="Forms">
<forms cookieless="UseCookies" enableCrossAppRedirects="true" loginUrl="~/Login" name=".ASPXAUTH" slidingExpiration="true" timeout="100000" requireSSL="false" />
</authentication>
Вот мое действие контроллеров (единственный атрибут на уровне контроллера [HandleError]):
[Transaction]
[PassParametersDuringRedirect]
[ModelStateToTempData]
[HttpGet]
public ActionResult Index(string artist)
{
Account account = accountTasks.GetProfileByUsername(artist);
if (account == null)
return RedirectToAction<HomeController>(x => x.Index(), null);
var viewModel = Mapper.Map<Account, ProfilePageViewModel>(account);
return View(viewModel);
}
Пол