aspとphpの時限式ページ生成のためのアイデアとコード
PHP版の時限ページ生成は。
<?php
$file = dirname(__FILE__).' /index.html';
$timex = time()-filemtime($file); //interval time in seconds
if($timex>7200){ //interval greater than 2 hours, regenerate
echo "<script language=javascript src='crhtml.php'></script>";
}
? >
のASP版時限式生成ページ。
<%
'Do not cache
Response.Buffer = True
Response.ExpiresAbsolute = Now() - 1
Response.Expires = 0
Response.cachecontrol = "no-cache"
'Read last modified time
FPath = server.mappath("index.html")
set fso=server.CreateObject("scripting.filesystemobject")
If fso.fileExists(FPath) Then
Set f = fso.GetFile(FPath)
crdate=f.DateLastModified
end if
if DateDiff("h",crdate,now())>10 then 'The time interval is greater than a certain value
response.write "<iframe border=0 frameborder=0 scrolling=no width=0 height=0 src=""/crhtml.asp""></ iframe>"
end if
%>
使用方法 サイトのトラフィックページでは、一般的にiframeとホームページのために、上記のコードは、挿入などすることができます呼び出します。
2011-7-9 @ PS 更新:下のコメントを残してくれた友人が言っていたように、この方法はサーバーの負荷を増加させます。この方法のデメリットを回避するために、2つの解決方法があります。
1つは、create.aspを呼び出すために、アクセスの少ないページのように、呼び出されるページに頻繁にアクセスする数を減らすことです。
2つ目は、直接LinuxのcronタイミングサービスやWindowsのスケジュールタスク、あるいは小さなソフトウェアを使って、一定間隔でコマンドを実行することです。 hou タスクスケジュール .
参照した記事は以下の通りです。
1. linuxはcrontabコマンドで一定時間ごとにサーバーを再起動させます。
2. Cronは、一定時間ごとにパラメータを指定してPHPコードを実行します。
こうすることで、生成された判定ページを頻繁に呼び出すことを避け、実行が必要なときに一度だけ生成ページにアクセスすればよいのです。
cdnを使用するサイトの留意点
現在、多くのWebサイトがcdnを使用しているという事実の観点から、ホームページの一定の自動生成は、ホームページが空のコンテンツである原因となるcdnのクロールの場合につながる可能性がありますので、どのようにこれを解決するために。
スクリプトのホームプログラム:例えば、あなたはindex_def.htmを生成し、コンテンツが更新されているかどうかを判断するプログラムを通じて、コンテンツが空(コンテンツは一般的に30k以上)ではないので、コピー操作の実装は、index_def.htmができるコピーをインデックスすることができます。
それはより強力であるため、Winddowサーバはvbscriptを使用することができ、Linuxは、シェルを使用することができます。
vbscript
Dim fso
Set fso = CreateObject("Scripting.FileSystemObject")
f1="F:\webroot\jb51net\index_def.htm"
f2="F:\webroot\jb51net\index.htm"
fsize=50000 '50k
set fn2=fso.GetFile(f1)
flsize2=fn2.size
fldate2=fn2.datelastmodified
set fn=fso.
flsize1=fn.size
fldate1=fn.datelastmodified
If fso.FileExists(f1) and flsize2>fsize and fldate2>fldate1 Then
fso.getfile(f1).copy(f2)
if err.number=0 then WriteHistory "success"&now()&"......... ","log.txt"
end if
Sub WriteHistory(hisChars, path)
Const ForReading = 1, ForAppending = 8
Dim fso, f
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.OpenTextFile(path, ForAppending, True)
f.WriteLine hisChars
f.Close
End Sub
BinaryDevelopの元記事で、誰でも無料で利用できます。
この記事はaspとphpの時限ページ生成の考え方とコードを紹介しています、よりaspの時限ページ生成に関連する内容はBinaryDevelopの過去記事を検索してください、または以下の関連記事を引き続き閲覧してください、今後ともBinaryDevelopをよろしくお願いします!。
関連
-
指定したフォルダーにあるリンク切れファイルのシンボリックリンクを自動的に削除するスクリプト
-
ASP + ajaxはトップを達成するために、同じサポートと反対側のコードのステップ
-
オンライン圧縮・解凍のためのASPコード
-
aspはプロジェクトの終了時刻を計算するためにWeekday関数を使用します。
-
ASPでフォルダーの存在を検出し、存在しない場合は自動的に作成する方法
-
Perlの特殊な組み込み変数の詳細
-
Perlによるディレクトリの探索とLinuxコマンドによるログの解析 コード例共有
-
perl で書かれた乱数話法プログラム (rand random function)
-
windows perlでフラッシュ後にスクリプトが終了しないようにする方法
-
Perl 構文による Perl 演算子の使用法ガイド
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン