c# - route - El sitio web solicita "Autenticación requerida" en un controlador MVC, pero no en otros
route controller mvc 5 (1)
Tengo un sitio web asp.net C # MVC. Utiliza SimpleAuthentication y formularios de autenticación. Todo funciona bien, lo que requiere que las personas inicien sesión para ir a las páginas. Sin embargo, tengo un controlador llamado "ReportsController". Cada vez que vaya a la URL de las acciones dentro de este controlador, siempre aparece con la leyenda "Autenticación requerida" en la ventana del navegador.
Solo lo está haciendo para este controlador y no para otros. La URL será "www.domain.com/reports". Esta URL funciona bien cuando corro desde IIS y desde mi servidor de desarrollo, pero no en mi servidor en vivo. Esto está ejecutando IIS7.
Revisé mi web.config y definitivamente está configurado en autenticación de formularios y no en Windows.
Alguien tiene alguna idea de por qué las URL que comienzan con "/ Informes" no funcionarían. Supongo que es algo específico del servidor, como una configuración de IIS o un cambio de web.config, pero no puedo entender cuál sería.
namespace ProjectName.Controllers
{
public class ReportsController : Controller
{
public ActionResult Index()
{
throw new SystemException("here");
return View();
}
}
}
Web.config:
<authentication mode="Forms">
<forms loginUrl="~/" timeout="2880" />
</authentication>
Resulta que Sql Server Reporting Services se estaba ejecutando en el servidor. Esto tomaba el control de la URL "/ Informes" en todos los sitios web en ese servidor.
No estoy usando SQL Server Reports, así que fui a "Reporting Services Configuration Manager" en el servidor y eliminé la dirección IP y el puerto en el que estaba escuchando. También puede cambiar la URL que usa en su lugar si aún necesita usar esto.