Redirection vers l'URL absolue ne fonctionne pas dans MVC 4
Pour des raisons que j'ai pour rediriger les requêtes de mon MVC 4 application pour les pages avec des Url absolues qui se trouve dans une autre domaines. Voici le code que j'utilise:
public ActionResult Test(string url)
{
return Redirect(url);
}
Tout fonctionne bien quand je l'ai essayer sur ma machine locale, mais lorsque je publie le code à la production et à essayer d'obtenir ce travail là, alors j'ai quelques problèmes... par exemple, pour rediriger la demande vers le " https://stackoverflow.com/questions/ask 'il sera redirigé vers la" http://{{myserverdomain.com}}/questions/ask". Donc, la demande sera redirigé vers le chemin d'accès local "questions/demande" au lieu de l'URL absolue.
N'ai aucune idée de quoi et où je devrais vérifier. Je vous serais reconnaissant de toute allusion à ce qui pourrait être le problème et où le vérifier...
Juste au cas où: le serveur est un Windows Server 2008 R2 Enterprise
Mise à JOUR
URL/codage HTML n'est pas la raison du problème. Changement de méthode pour la
public ActionResult Test()
{
return Redirect("https://stackoverflow.com/questions/ask");
}
donnent le même résultat... il sera redirigé vers " questions/poser/les Soupçonne que la raison pour laquelle avec le module de Réécriture d'URL, mais ne sais pas comment le vérifier encore...
SOLUTION
voici le lien qui vous a aidé à résoudre la question: http://forums.iis.net/t/1171047.aspx
Url/codage Html n'est pas la raison... juste changé la description du problème. C'est l'exemple de test et en réalité je ne vais pas entrer l'URL de la méthode du paramètre 🙂
OriginalL'auteur Mr. Pumpkin | 2013-03-28
Vous devez vous connecter pour publier un commentaire.
C'est étrange parce que c'est la bonne façon...
Vous ne pouvez pas effectuer directement un serveur de redirection côté de l'ajax réponse. Vous pouvez, cependant, de retour d'un JsonResult avec la nouvelle url et d'effectuer la redirection en javascript.
Côté Serveur :
Côté Client:
Vous m'a donné la solution, j'ai utilisé la redirection dans une fonction void et rien ne s'est vraiment passé. J'ai donc dû utiliser ActionResult et le retour de la redirection. Merci.
Pas de problème Ronen! 🙂
OriginalL'auteur Joan Caron
après quelque essaie de résoudre le problème je n'ai pas eu de succès... j'ai donc décidé d'aller de l'autre et préparé une sorte de redirection personnalisée par le biais de la page de redirection qui ne le JavaScript changement d'emplacement.
Voici le code...
Méthode d'assistance:
Web.config:
Contrôleur:
Et HTML:
N'aime pas ce genre de hacks, mais qui a fonctionné pour moi...
OriginalL'auteur Mr. Pumpkin