Als ich nur 404.asp verstanden habe, habe ich einmal geträumt, den gesamten Programmcode in 404 zu schreiben, um eine Station zu erkennen, die die statische Webseite simuliert.
Bis ich den Server gesehen habe. .
<!-#include file = bin/404_qury->
< %
Wählen Sie Case Bin_Command
Fallbehälter
Server.transfer (bin/web)
Fall Uploadfiles
Server.transfer (bin/send-stream)
Fall sonst
Server.transfer (bin/send-404)
Ende auswählen
%>
Hehe, um es klar auszudrücken, es basiert auf Bin_Command, um zu beurteilen, ob es sehr funktionsfähig ist, wenn es sich um Bin handelt. . In PHP gibt es keine Umschreibung.
Der Quellcode von Bin/404_Query lautet wie folgt:
< %
URLS = MID (Request.queryString, Instration (Request.queryString ,: 80) +4)
Wenn Instrumente (URLs,/)> 0 dann
bin_command = links (urls, instr (urls,/)-1)
getFile = ersetzen (URLs, bin_command &/,)
anders
bin_command = bin
Ende wenn
%>
Dieser Code ist hauptsächlich, um zu bestimmen, was Bin_Command ausgeführt wird.
Wie z.
Demo.com/uploadFiles/123456.gif (diese Datei entspricht tatsächlich den Dateien/123456.gif), dann können Sie es an Bin/Send-Stream geben. Sie können sich auf den Artikel beziehen, den ich einen Artikel AP Practical BinaryWrite und Adodb.stream geschrieben habe.
Demo.com/111/222, dann Bin_Command = 111 ″, es gibt keine Definition in ausgewählten Fall, es ist sonst und gibt es für die Verarbeitung an bin/send-404.
Auf diese Weise ist diese Website eine statische Seite. Soweit ich weiß, unterstützen 99,9%der inländischen IIS -Hosts ISAPI_REWRITE nicht, und ich habe es einmal begegnet, weil die Ressourcen zu schwerwiegend sind und bald abgesagt werden.
Das Folgende ist das, was ich auf dem ASP -Lernen online gesehen habe und als Referenz an der Rückseite beigefügt bin:
Rufen Sie die Server.transfer -Methode an, beenden Sie sofort die Ausführung der ersten Seite und beginnen Sie mit der Ausführung der zweiten Seite.
Wenn die erste Seite beginnt, einen Antwortpuffer zu schreiben, wird die zweite Seite zum Puffer hinzugefügt, anstatt ihn zu ersetzen.
Wenn der Puffer geöffnet ist, ändert diese Methode den HTTP -Kopf, es sei denn, der ASP -Puffer ist nicht inhaltlich.
Bei der Übermittlung an andere Anwendungen enthält die Antragsobjekte für Startseiten und Sitzungsobjekte Anwendungsinformationen.
Vorbildliches Beispiel
Auf der folgenden Beispielseite wird erläutert, wie die Methode Server.transfer verwendet wird.
1.
<html>
<body>
<h3> Schritt 1 -Form </h3>
<Table Border = 1>
<tr>
<Th> post </th>
<td>
<Form action = page2.asp -methode = post>
<Eingabe type = text name = name/>
<Eingabe type = Senden Wert = Senden/>
</form>
</td>
</tr> <te>
</tr>
<Th> Holen Sie sich </th>
<td>
<Form action = page2.asp -methode = get>
<Eingabe type = text name = name/>
<Eingabe type = Senden Wert = Senden/>
</form>
</td>
</table>
</body>
</html>
2. Setzen Sie den folgenden Code als Seite2.asp (ohne Zitat) ein:
< % @Uanguage = vbscript %>
<html>
<body>
<h3> Schritt 2 -transfer -Seite </h3>
< %
Wählen Sie Case uCase
Fall Post
Server.transfer page3a.asp
Fall Get
Server.transfer page3b.asp
Fall sonst
Antwort. Schreiben Sie ein unbekanntes HTTP -Verb wurde verwendet.
Ende auswählen
%>
</body>
</html>
3. Setzen Sie den folgenden Code als Seite3a.asp (ohne Zitat):
< % @Uanguage = vbscript %>
<h3> Schritt 3a -Post -Ergebnisse </H3>
<p> Hallo < % = Request.Form (Name) %> </p>
V.
< % @Uanguage = vbscript %>
<h3> Schritt 3B -get -Ergebnisse </h3>
<p> Hallo < % = Request.queryString (Name) %> </p>
Hinweis: Die letzten beiden Seiten sind unvollständige HTML -Seiten. Dies liegt daran, dass beide Seiten dem zweiten Seitepuffer hinzugefügt werden.
Durchsuchen Sie Seite1.asp, um diese Instanz zu testen.