多くのブログ ログ閲覧ページの最後に永久リンクが表示されますが、このリンクは通常、ブログ プログラムが変更された場合でも、見つからなくなるという問題なく、このリンクを使用して元のログにアクセスできます。ページ状況、これはまさにブログにとって実用的な機能です。
ブログプログラムを修正する際にこの点も考慮し、ブログログに永久リンク機能を追加することにしました。
IIS6 では、ディレクトリの後にパラメータが要求された場合、このパラメータはデフォルトのドキュメントに渡されます。つまり、ブログのホームページhttp://www.xojiwei.cn/blog/?id=500 を要求した場合です。 id=500 はデフォルトのドキュメントdefault.aspに渡されます。これを使用して、ブログ ログへの永久リンクを実現できます。もちろん、この永久リンクはブログのディレクトリが変更されない場合に確立されます。ディレクトリが変更されると、追加の処理が必要になります。
Response.Redirect は ASP で使用できます。原則として、サーバーが 302 Object Moved 応答をクライアントに送信し、クライアントがその応答に基づいてリダイレクトを実行します。ただし、これにより帯域幅のオーバーヘッドが増加し、検索は使用されません。エンジンに含めるため、リダイレクトには Server.Transfer を使用することをお勧めします。 Server.Transfer は現在のスクリプトの実行を直接停止し、代わりに指定されたスクリプトを実行します。また、セッションなどの一部の現在の変数はパラメーターを再渡さずに新しいスクリプトで直接使用できますが、Response.Redirect は使用できません。
2 つのメソッドのもう 1 つの明らかな違いは、Response.Redirect を使用するとクライアントによって表示される URL が変更されますが、Server.Transfer を使用すると、クライアントは現在の URL が実際に変更されたとは感じないことです。実際、この違いは 2 つのメソッドの呼び出しメソッドからもわかります。1 つは、Response.Redirect がクライアントによって変更されるのに対し、Server.Transfer はサーバーによって変更されることです。
これらを理解した後、ブログの既定のドキュメント (通常はブログ プログラムのホームページ) (default.asp、index.asp など) を開き、出力コンテンツの前に次のコードを追加します。
<%IF Request.QueryString ("id") then Server.Transfer("article.asp")%>
もちろん、article.asp はブログ プログラムに応じて変更する必要があります。id は、固定リンクとして使用されるパラメータです。このパラメータは、article.asp、つまり、article によって認識される必要があります。 asp はこのパラメータに基づいてログを表示できます。そうでない場合は、対応する変更を行う必要があります。つまり、article.asp のパラメータ名を id に変更するか、id を別の名前に変更する必要があります。
よし、完了!実際、これは非常に単純で、このような長い記事はほとんどがナンセンスであり、本当に役に立つのは 1 文のコードだけです。
原文: http://www.xujiwei.cn/blog/?id =647