Il existe de nombreuses façons d'implémenter des pages HTML statiques, mais tout le monde ne sait pas comment implémenter des pages statiques. Alors maintenant, le rédacteur en chef de Foxin vous présentera comment implémenter des pages statiques dans ASP. Les amis intéressés viennent jeter un œil.
1. Utilisez ISAPI_REWRITE pour lier et réécrire dynamiquement l'URL statique HTML. Isapi_rewrite est un composant DLL, et Re_Write est un module dans IIS. Cette implémentation de filtre utilise des expressions régulières pour cartographier les URL Web dynamiques aux URL statiques. Par exemple, vous pouvez convertir News.asp? Id = 95 en news / 95.html via re_write. L'expression régulière de mappage est définie dans le fichier httpd.ini.
Pour donner un petit exemple: Pour gérer la page de données, la méthode d'écriture est:
plus _ <% = page%> _ <% = type%>. HTML (Remarque: la page est le nombre de pages tournées, le type est le type de données)
Si vous vous tournez à la page suivante, c'est: More_2_95.html, et continuez la boucle de la page suivante, c'est:
Plus_3_95.html, et ainsi de suite.
Cependant, vous devez ajouter le code suivant au fichier httpd.ini:
REWRITERULLE / MORE_(D+)_(D+).HTML / JSP Tutoriel / More.asp? Page = 1 1 & Type = $ 2 [n, i] chaîne 9
Si votre programme dynamique a plusieurs paramètres à passer, ajoutez plusieurs (D +), comme suit:
REWRITERULLE / MORE_(D+)_(D+)_(D+).html /asp/more.asp?page=$1&type=$2&type2=$3 [n, i]
Avantages: il n'est essentiellement pas nécessaire d'apporter des modifications dans le programme. Trouble: Pour y parvenir, vous devez contrôler l'IIS, donc lorsque vous louez le serveur de quelqu'un d'autre, vous devez d'abord contacter le fournisseur de services. (Bien sûr, c'est pour ASP, il n'est pas nécessaire de faire le tutoriel ASP.NET - Vous pouvez directement mettre l'assemblage DLL dans le bac du programme, puis le configurer de manière appropriée)
2. Mécanisme de gestion des erreurs 404 d'IIS: en personnalisant les erreurs, tournez-vous vers la page de traitement que nous avons préparée. Cependant, cette évolutivité doit être étudiée et les exigences globales pour le traitement du programme sont également élevées, et elle n'est pas très adaptée aux applications pratiques.
Tout d'abord, définissez les propriétés du site - Erreurs personnalisées
Recherchez l'erreur HTTP 404, puis modifiez les propriétés -> Type de message et sélectionnez URL-> URL pour remplir "/index.asp", ou votre page de gestion des erreurs.
De cette façon, par exemple, lorsqu'un utilisateur ou une araignée visite http: //cn/12345.html (12345 est l'ID de l'article dans le didacticiel de la base de données). Étant donné que certaines pages n'existent pas, une erreur 404 a été déclenchée. Se tournant vers index.asp
Ajouter index.asp
La copie de code est la suivante:Currdomain = request.servervariables ("http_host") 'Nom de domaine actuel d'accès
currurl = remphal
Le currurl à ce moment doit être: 12345.html.
3 et 3
1. Créez une nouvelle information sur le dossier (car l'URL de la page des informations d'accès finales est http: // localhost / info /? 1.html)
2. Créez un nouveau fichier default.asp dans le dossier Info (c'est-à-dire la page de la page d'accueil par défaut)
Le contenu du fichier default.asp est le suivant
La copie de code est la suivante:<%
Currdomain = request.servervariables ("http_host") 'Nom de domaine actuel d'accès
currurl = remplacer (request.servervariables ("query_string"), "404; http: //" & currdomain & "/ info /?", "")
id = remplacer (currurl, ". html", "")
%>
où id est le paramètre passé
S'il y a plusieurs paramètres, vous pouvez transformer pseudo-statique l'URL en info /? 1-2-3.html
Parmi eux, 1, 2 et 3 représentent chacun les valeurs de trois paramètres, et les chaînes séparées peuvent être proposées séparément.
Page statique réelle HTML
Écrivez du code HTML dans un fichier et générez un fichier au format .html
La copie de code est la suivante:<%
filename = "test.htm"
Si demande ("corps") <> "" alors
set fso = server.createObject ("scripting.filesystemObject")
SET HTMLWRITE = FSO.CREATETEXTFILE (server.mappath ("" FileName ""))
htmlwrite.write "<html> <éad- head> <itle>" request.form ("title") "</title> </ head>"
htmlwrite.write "<body> contenu de title de sortie:" request.form ("title") "<br /> contenu du corps de sortie:" request.form ("body") "</ body> </html>"
htmlwrite.close
set fout = rien
Définir FSO = rien
terminer si
%>
<form name = "form" méthode = "post" action = "">
<input name = "title" value = "title" size = 26>
<br>
<TextArea name = "Body"> Body </ TextArea>
<br>
<br>
<input type = "soumi" name = "soumi" value = "générer html">
</ form>
2. Cependant, il est très gênant de générer des fichiers HTML selon la méthode ci-dessus. La deuxième méthode consiste à utiliser la technologie du modèle pour remplacer la valeur du code spécial dans le modèle par la valeur acceptée à partir du champ de formulaire ou de base de données pour compléter la fonction de modèle; Pour générer des fichiers HTML à partir de tous les codes de modèle qui ont finalement été remplacés. Cette technologie est plus utilisée et la plupart des CM utilisent cette méthode.
Template.htm '// Fichier de modèle
La copie de code est la suivante:<html>
<adal>
<Title> $ Title $ par Aspid.cn </Title>
</ head>
<body>
$ body $
</docy>
</html> TestTemplate.asp '// Générer HTML
<%
DIM FSO, HTMLWRITE
Strtitle Dim, Stracent, Strout
'// Créer un objet Système de fichiers
set fso = server.createObject ("scripting.filesystemObject")
'// Ouvrez le fichier de modèle Web et lisez le contenu du modèle
Définir htmlwrite = fso.opentextfile (server.mappath ("template.htm"))
Stout = F.Readall
htmlwrite.close
strTextle = "Titre de la page Web générée"
StrContent = "Contenu de la page Web générée"
'// Remplacez les balises du modèle par un contenu réel
Strout = remplacer (Strout, "$ title $", strtitle)
Strout = Remplacer (Strout, "$ body $", strContent)
'// Créer la page statique à générer
définir htmlwrite = fso.createtextfile (server.mappath ("test.htm"), true)
'// Écrivez du contenu sur la page Web
htmlwrite.writeline Stout
htmlwrite.close
Response.Write "La page statique a été générée avec succès!"
'// Libérez l'objet Système de fichiers
définir htmlwrite = rien
Définir FSO = rien
%>
Cet article présente comment implémenter des pages statiques dans ASP. Les amis qui en ont besoin peuvent y faire référence.