この人頭いいなと思ったエピソード

Perlでは、
http://xxxx/read.cgi/yyyy/cccc/
というアドレスでread.cgiにyyyy とccccを
環境変数PATH_INFOをつかって引数にできますが、
ASPでは
http://xxxx/read.asp/yyyy/cccc/
では、IISが404を返してきます。
http://xxxx/read.asp?yyyy/cccc/
とすればアクセスできることは確認しましたが、
read.asp?yyyyではなくread.asp/yyyy
でアクセスできるようにする方法はありますか?

A 回答 (3件)

ちょっと乱暴ですが、404Not FoundのHTMLページを入れ替えるという手段で以前実現したことがあります。


IISのエラー時に表示するファイルを指定するオプションタブにて404の参照する404.htmlを適当な場所に保存したたとえば404.aspを参照するように変更します。

手抜きで申し訳ありませんが、404.aspのサンプルらしきものを以下に記述します。
<%
Option Explicit

Dim strPath
Dim strASPFileName
Dim strQuery
strASPFileName = "read.asp"
strPath = Request.Servervariables("PATH_INFO"),strASPFileName)

strQuery = Right( _
strPath, _
Len(strPath)_'全体の文字数
- (Instr(strPath,strASPFileName)_'ファイル名の位置
+ Len(strASPFileName & "/")) _'ファイル名 + "/"の文字数
)

Response.Write strQuery

%>
ソースにエラーがあったらごめんなさい。適宜修正してみてください。
    • good
    • 0

デフォルトでは不可です。

ASP.NETではOKですが。

http://program.station.ez-net.jp/products/isapi/ …
を使えば可能になります。

参考URL:http://program.station.ez-net.jp/products/isapi/ …
    • good
    • 0

たぶん、そのような方法は出来ないのでは無いでしょうか・・・。


自信はありませんが。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報