静的HTMLページを実装するには多くの方法がありますが、静的ページを実装する方法を誰もが知っているわけではありません。そのため、Foxinの編集者は、ASPに静的ページを実装する方法を紹介します。興味のある友達が来て見てください。
1。ISAPI_REWRITEを使用して、HTML静的URLを動的にリンクおよび書き換えます。 ISAPI_REWRITEはDLLコンポーネントであり、RE_WriteはIISのモジュールです。このフィルターの実装では、正規表現を使用して、動的なWeb URLを静的URLにマッピングします。たとえば、news.asp?id = 95をnews/95.htmlにre_writeから変換できます。マッピング正規表現は、httpd.iniファイルに設定されています。
例を挙げると、データページのターンに対処するには、ライティング方法は次のとおりです。
その他_ <%= page%> _ <%= type%>。html(注:ページはターンされているページ数、タイプはデータ型です)式フォーム:more_1_95.html
次のページに頼る場合、それは次のとおりです:more_2_95.html、そして次のページのループを続行します:それは次のとおりです。
more_3_95.htmlなど。
ただし、次のコードをhttpd.iniファイルに追加する必要があります。
rewriterulle /more_(d+)_(d+).html /jsp tutorial /more.asp?page = $ 1&type = $ 2 [n、i]文字列9
動的プログラムに合格する複数のパラメーターがある場合は、次のように複数(d+)を追加します。
rewriterulle /more_(d+)_(d+)_(d+).html /asp/more.asp?page=$1&type=$2&type2=$3 [n、i]
利点:基本的に、プログラムに変更を加える必要はありません。問題:これを達成するには、IISを制御する必要があるため、他の人のサーバーをレンタルするときは、最初にサービスプロバイダーに連絡する必要があります。 (もちろん、これはASP向けです。ASP.NETチュートリアルを使用する必要はありません - プログラムのDLLアセンブリをビンに直接配置してから適切に構成できます)
2。IISの404エラー処理メカニズム:エラーをカスタマイズすることにより、準備した処理ページに移動します。ただし、このスケーラビリティを調査する必要があり、プログラム処理の全体的な要件も高く、実用的なアプリケーションにはあまり適していません。
まず、サイトのプロパティを設定 - カスタムエラー
HTTPエラー404を見つけてから、プロパティ - >メッセージタイプを編集し、url-> urlを選択して「/index.asp」またはエラー処理ページを入力します。
このように、たとえば、ユーザーまたはスパイダーがhttp://cn/12345.htmlにアクセスする場合(12345はデータベースチュートリアルの記事のIDです)。一部のページは存在しないため、404エラーがトリガーされました。 index.aspに転向します
index.aspを追加します
コードコピーは次のとおりです。croldomain = request.servervariables( "http_host") '現在のアクセスドメイン名
currurl = leplay(request.servervariables( "query_string")、 "404; http://"&cullromain& ":80"、 "") 'アクセス
この時点のCurrurlは、12345.htmlでなければなりません。
3。
1.新しいフォルダー情報を作成します(最終アクセス情報のページURLはhttp:// localhost/info/?1.htmlです)
2。情報フォルダーに新しいdefault.aspファイルを作成します(デフォルトのホームページのページ)
default.aspファイルの内容は次のとおりです
コードコピーは次のとおりです。<%
croldomain = request.servervariables( "http_host") '現在のアクセスドメイン名
currurl = lepter(request.servervariables( "query_string")、 "404; http://"&crolromain& "/info/?"、 "") 'currorアクセスURL
id =置き換え(currurl、 "。html"、 "")
%>
ここで、IDは渡されたパラメーターです
複数のパラメーターがある場合は、URLをinfo/?1-2-3.htmlに擬似スタイアルに変えることができます
その中で、1、2、および3はそれぞれ3つのパラメーターの値を表し、分離された文字列を個別に提案できます。
実際のHTML静的ページ
HTMLコードをファイルに書き込み、.html形式でファイルを生成します
コードコピーは次のとおりです。<%
filename = "test.htm"
request( "body")<> "" thenの場合
fso = server.createObject( "scripting.filesystemObject")を設定します
htmlwrite = fso.createTextfile(server.mappath( "" filename "")を設定します)
htmlwrite.write "<html> <head> <title>" request.form( "title") "</title> </head>"
htmlwrite.write "<body> outputタイトルコンテンツ:" request.form( "title") "<br/> output body content:" request.form( "body") "</body> </html>"
htmlwrite.close
FOUT =何も設定しません
FSO =何も設定しません
ifを終了します
%>
<form name = "form" method = "post" action = "">
<入力名= "title" value = "title" size = 26>
<br>
<textarea name = "body"> body </textarea>
<br>
<br>
<input type = "submit" name = "submit" value = "生成html">
</form>
2.ただし、上記の方法に従ってHTMLファイルを生成することは非常に不便です。 2番目の方法は、テンプレートテクノロジーを使用して、テンプレート内の特別なコードの値をフォームまたはデータベースフィールドから受け入れた値に置き換えて、テンプレート関数を完了することです。最終的に置き換えられたすべてのテンプレートコードからHTMLファイルを生成します。この技術はより多く使用されており、ほとんどのCMはこの方法を使用しています。
template.htm '//テンプレートファイル
コードコピーは次のとおりです。<html>
<head>
<title> $ title $ by aspid.cn </title>
</head>
<body>
$ body $
</body>
</html> testtemplate.asp '// htmlを生成します
<%
dim fso、htmlwrite
Dim Strtitle、Strcontent、Strout
'//ファイルシステムオブジェクトを作成します
fso = server.createObject( "scripting.filesystemObject")を設定します
'// Webテンプレートファイルを開き、テンプレートコンテンツを読み取ります
set htmlwrite = fso.opentextfile(server.mappath( "template.htm"))
strout = f.readall
htmlwrite.close
strtextle = "生成されたウェブページタイトル"
strcontent = "生成されたWebページコンテンツ"
'//テンプレート内のタグを実際のコンテンツに置き換えます
strout = cheplaut(strout、 "$ title $"、strtitle)
ストラウト=交換(strout、 "$ body $"、strcontent)
'//生成する静的ページを作成します
htmlwrite = fso.createTextfile(server.mappath( "test.htm")、true)を設定
'// Webページにコンテンツを書き込みます
htmlwrite.writelineストラウト
htmlwrite.close
Response.Write「静的ページは正常に生成されました!」
'//ファイルシステムオブジェクトをリリースします
htmlwrite = Nothingを設定します
FSO =何も設定しません
%>
この記事では、ASPに静的ページを実装する方法を紹介します。それを必要とする友達はそれを参照できます。