2010-04-29 3 views
0

J'ai créé une page de connexion. Dans cette page j'ai utilisé la balise div qui est mappée avec des images pour de bonnes raisons de conception. J'ai activé l'authentification par formulaire dans web.config. Donc, finalement, les images que j'ai mappées dans div n'apparaissent pas dans la page de connexion. aidez-moi s'il vous plaît!Problème dans la page de connexion dans asp.net

+0

Pouvez-vous envoyer votre code? – Theresa

Répondre

-1

Je suppose que les images ne s'affichent pas en raison de l'accès? Où les images existent-elles? Si elles existent dans un répertoire verrouillé à l'authentification par formulaire, les images ne peuvent pas s'afficher. Essayez d'ajouter un fichier web.config à votre répertoire d'images et d'autoriser l'accès public à ces fichiers.

Voici ce que le web.config doit contenir:

<?xml version="1.0"?> 
<configuration> 
    <location path="images"> 
     <system.web> 
      <authorization> 
       <allow users="*"/> 
      </authorization> 
     </system.web> 
    </location> 
    <system.web> 
     <!-- Your normal web.config stuff here --> 
    </system.web> 
</configuration> 

Vérifiez également vos paramètres IIS pour l'application en général pour vous assurer que vous autorisez l'accès anonyme.

EDIT: Assurez-vous de déplacer vos images dans un dossier qui ne nécessite aucune autorisation. Si vous les avez dans le même répertoire que vos pages aspx sécurisées, vous ne pourrez pas y accéder.

EDIT 2: Inclus l'information fournissent par Thomas et Sky Sanders comme elle comprenait une meilleure solution. Voir les commentaires sur les réponses pour plus d'informations.

+0

comment ajouter dans le fichier web.confg sur le répertoire des images – Partha

+0

@ Sarathi1904 suffit de créer un fichier appelé 'web.config' et de copier le contenu xml que j'ai posté dessus. Puis ajoutez ce fichier dans le répertoire où vos images existent. Assurez-vous que les images sont dans leur propre répertoire et non inclus avec tous vos fichiers aspx. – Kelsey

+0

Cela peut fonctionner dans la plupart des cas, mais la règle que vous spécifiez est trompeuse. Une meilleure forme de l'OMI consisterait à spécifier clairement l'accès libre avec allow = * comme indiqué ci-dessous. –

2

Ajouter un fichier web.config à votre répertoire d'images contenant les éléments suivants:

<?xml version="1.0" encoding="utf-8"?> 
<configuration> 
    <system.web> 
     <authorization> 
      <allow users="*" /> 
     </authorization> 
    </system.web> 
</configuration> 

Cela permettra à votre page de connexion, ce qui est généralement considéré par les utilisateurs non authentifiés, pour afficher des images.

+0

Le * permettra seulement à tous les utilisateurs authentifiés d'accéder au répertoire. Si c'est une page de connexion, ils ne seront pas encore authentifiés. – Kelsey

+0

@Kelsey - désolé mec. tu te trompes. croyez-moi. –

+0

... une demi-douzaine d'autres ... –

4

Si les images ne sont pas destinées à être protégées et doivent être visibles sur toutes les pages, alors j'ajouter une balise de localisation dans la principale web.config:

<location path="images"> 
    <system.web> 
     <authorization> 
     <allow users="*"/> 
     </authorization> 
    </system.web> 
</location> 
+0

... 6 sur un ... –

+0

Merci. C'est exactement ce que je veux dire merci beaucoup – Partha

+0

@Sarathi - vous devriez probablement accepter cette réponse si c'est exactement ce que vous voulez. juste sayin .... –