1

UrlRewritingNet.UrlRewriter.dll拡張機能を使用して、Web サイトに URL 書き換えルールを適用しました。web.config ファイルには、次のようなルールを記述しました。

<add name="Default"
     virtualUrl="^~/(.*)/Default.zkn"
     rewriteUrlParameter="ExcludeFromClientQueryString"
     destinationUrl="~/Default.aspx?lang=$1"
     ignoreCase="true"
/>

http://sitename.com/en/Default.zknDefault.aspx?lang=enに簡単に変更できます

私のheadセクションの一部は次のようなものです。

<link href="Styles/Default.css" type="text/css" rel="Stylesheet" media="screen" />

しかし、これを適用したため、headセクションで相対的に指定されたスタイルと追加の javascript ファイルは読み込まれません。

~次に、キャラクターを追加しようとしました。

<link href="~/Styles/Default.css" type="text/css" rel="Stylesheet" media="screen" />

多くの人がこれはうまくいくと言っていました。しかし、いいえ、うまくいきませんでした。

ページの読み込み後、ブラウザーでソースを開くと、~文字がサイト フォルダーに置き換えられていないことがわかります。

そのため、css ファイルと js ファイルで 404 エラーが発生します。

どうすれば修正できますか?

style/js ファイルにも新しい URL 書き換えルールを追加する方法はありますか?

4

1 に答える 1

2

多分あなたは試すことができます:

<%
var basePath = String.Format("{0}{1}",Request.ApplicationPath,  string.IsNullOrEmpty(Request.ApplicationPath) || !Request.ApplicationPath.EndsWith("/") ? "/" : "");
%>

<link href="<%=basePath%>Styles/Default.css" type="text/css" rel="Stylesheet" media="screen" />
于 2013-04-25T07:45:33.293 に答える