Recommandé: ASP Basic Tutorial: Apprendre l'application des sous-programmes dans ASP Dans ASP, vous pouvez appeler votre propre programme via VBScript et d'autres façons. Exemple: Appel d'un sous-programme utilisant VBScript Comment appeler un sous-programme écrit en VBScript d'Asp. Ce qui suit est le contenu cité
Après avoir passé le proxy, puisque une couche intermédiaire est ajoutée entre le client et le service, le serveur ne peut pas obtenir directement l'IP du client et l'application côté serveur ne peut pas revenir directement au client via l'adresse de transfert. Cependant, dans le HTTP_X_FORWARDED _ ???? Des informations sont ajoutées au http_x_forwarded _ ????. Utilisé pour suivre l'adresse IP du client d'origine et l'adresse du serveur demandé par le client d'origine:
Voici 2 exemples pour illustrer les principes de conception des applications de compatibilité du cache:
'Pour une application ASP qui nécessite l'adresse du nom du serveur: ne référez pas directement à http_host / server_name, et déterminez s'il y a http_x_forwarded_server
| Ce qui suit est le contenu cité: fonction gethostname () nom hôte dim as String = hostname = request.servervariables (http_host) Si ce n'est pas Isdbnull (request.servervariables (http_x_forwarded_host)) puis Si Len (Trim (request.servervariables (http_x_forwarded_host)))> 0 alors hostname = request.servervariables (http_x_forwarded_host) terminer si terminer si retour hostnmae fonction finale |
// Pour une application PHP qui doit enregistrer le client IP: ne référez pas directement à Remote_Addr, mais utilisez http_x_forwarded_for.
| Ce qui suit est le contenu cité: function getUserrip () { $ user_ip = $ _server [Remote_addr]; if ($ _server [http_x_forwarded_for]) { $ user_ip = $ _server [http_x_forwarded_for]; } } |
Remarque: HTTP_X_FORWARDED_FOR Si vous passez à travers plusieurs serveurs proxy intermédiaires, comment peut-il être plusieurs adresses divisées par la virgule? Souvent, le champ utilisé pour enregistrer l'adresse du client est défini sur 20 octets, ce qui semble trop petit.
Je vois souvent des messages d'erreur comme les suivants:
Le champ Microsoft JET DATABASE MOTEUR ERROR '80040E57' est trop petit pour accepter la quantité de données à ajouter. Essayez d'insérer ou de coller moins de données.
/inc/char.asp, ligne 236
La raison en est que lors de la conception de l'adresse d'accès client, il est préférable de concevoir la taille du champ IP de l'utilisateur concerné à plus de 50 octets.
Partager: mécanisme de tolérance aux défauts dans le code ASP Prenant l'exemple de l'ASP le plus populaire en Chine, je ne sais pas combien de personnes pensent du concept de tolérance aux pannes lors de l'écriture de code. Pourquoi?