ASP网站IIS将''<%''javascript字符解释为ASP代码

时间:2018-03-14 23:26:27

标签: javascript asp.net iis-7

你好我的ASP网站有一个Javascript问题,问题是javascript包含多次simbol“<%”和“%>”并且IIS或ASP将其解释为ASP代码标记。

如果你在这里输入: https://frank02.zip2tax.com/website/pagescountries/canada/index/canadamap.js

即使文件是需要提供的js,我也会收到Vbs错误。我有另一台没有这个问题的服务器。

我认为服务器将其解释为ASP标记,但它不是ASP标记,这是javascript的一部分。在错误中显示的“`”之前有一个“<%”simbol。所以我认为它是尝试执行ASP代码:(。

以下是代码的一部分,您将能够看到<%simbol,所有文件都包含多个“`”字符,但在该符号之后我得到了错误。

Portion of code of the javascript which contains "<%" tag

在另一台服务器上运行OK: https://casper09.zip2tax.com/website/pagescountries/canada/index/canadamap.js

我需要,我不知道它是服务器配置还是代码中的更改。

1 个答案:

答案 0 :(得分:1)

我解决了这个问题,我发现javascript包含以下字符&#34;&lt;%&#34;这对应于ASP代码的开放标记。由于我的Web应用程序是一个ASP网页,服务器将其解释为ASP代码,甚至文件都是javascript(* .js)。我解决这个问题的方式是:

1)右键单击相应的应用程序池,然后选择高级设置。 2)在&#34; .NET Framework版本&#34;将其更改为&#34; 4.0&#34;。 3)On&#34;启用32位&#34;我设置为&#34; True&#34;。 4)On&#34;管理管道模式&#34;我设置了#34; Integrated&#34;。

一旦完成,我在web.config上设置/更改

<handlers accessPolicy="Read, Execute, Script">
        <add name="ASP-Classic-in-js" path="*.js" verb="GET,HEAD,POST" modules="IsapiModule" scriptProcessor="%windir%\system32\inetsrv\asp.dll" resourceType="Unspecified" requireAccess="Script" preCondition="bitness64" />
</handlers>

然后,重新启动应用程序池,然后重新启动网站。