カスタム URL 書き換えの設定に問題があります。これを管理するためにサードパーティのツールは使用していません。global.asax を使用して、すべてのリクエストを確認して処理するだけです。
私がそれを使用している方法は次のようなものです: www.mydomain.com/site/google.com
このページには、サイト「google.com」に関する情報が含まれています。URL 内で実際のドメインを使用しています。これはすべて正常に動作します。
どのように機能するかの例を示すために、使用しているコードを単純化しました。
Dim myContext As HttpContext = HttpContext.Current
Dim URL As String = myContext.Request.ServerVariables("URL")
If URL.ToLower.Contains("/site/") Then
URL = URL.Trim("/")
Dim strURL As String = URL.ToLower.Split("/")(1)
Redirect301("/site.aspx?url=" & strURL)
Exit Sub
End If
私が抱えている問題は、特定のドメイン拡張子に関するもので、ページがカスタム 404 Not Found をロードするだけで、原因がわかりません。
読み込まれないページの例:
- /site/google.ad
- /site/google.cd
システムは .cd および .ad ファイルが実際の物理ファイルであると見なし、それらが見つからない場合、カスタム 404 エラーが表示されると推測しています。実際には、リクエストが global.asax に到達しているようには見えません。ローカル環境で作業している場合、実際には正常にロードされますが、この問題が発生するのはライブサーバーのみであり、これが原因を突き止めようとする悪夢でした。
私が見つけた別の問題は、次の URL の読み込みでした。
- /site/prn.com
これは再び 404 エラーを示していますが、今回は私が作成したカスタム エラーではなく、実際の見栄えの悪い .net 404 エラー ページです。これは、ローカル環境でも問題なく動作します。
これを解決するには、IIS の設定またはコードを変更する必要があります。
お時間をいただきありがとうございます:)
あき