各位,今天遇到了个错误:程序为net3.5 其他的页面都可以使用,唯独有2两个页面提示下面的错误:
“/pdd”应用程序中的服务器错误。
--------------------------------------------------------------------------------
配置错误
说明: 在处理向该请求提供服务所需的配置文件时出错。请检查下面的特定错误详细信息并适当地修改配置文件。
分析器错误消息: 在应用程序级别之外使用注册为 allowDefinition='MachineToApplication' 的节是错误的。如果在 IIS 中没有将虚拟目录配置为应用程序,则可能导致此错误。
源错误:
行 125: cookieless="false" timeout="20" />
行 126: -->
行 127: <sessionState mode="InProc" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes" cookieless="false" timeout="120"/>
行 128: <!--作用:配置 ASP.NET HTTP 运行库设置。该节可以在计算机、站点、应用程序和子目录级别声明。
行 129: 示例:控制用户上传文件最大为4M,最长时间为60秒,最多请求数为100
源文件: C:\Program Files\pdd\pro\web.config 行: 127
通过网络上查询的:-----------------------------------------------------------------------------
1、开始 -- 管理工具 -- 计算机管理(Win2003的位置,其他操作系统类似)打开计算机管理
2、展开计算机管理左边树中“服务和应用程序”节点,再在其下展开“索引服务”节点,再在其下展开“System”节点,再在其下展开“目录”节点。
3、在计算机管理的右边我们可以看到配置的索引服务目录。
4、在“目录”节点上右击鼠标,选择“新建”--“目录”
5、在“添加目录”对话框中,路经输入框中输入 ASP.net 的临时文件目录。默认应该是:
c:\<WINDIR>\Microsoft.NET\Framework\<Version Number>\Temporary ASP.NET Files 目录。
<Version Number> 指你要处理的.net版本。
6、在“包含在索引中吗?”选项中,选择“否”
7、单击“确定”按钮
8、在“索引服务”节点上右键单击,重起索引服务即可。
(可用记事本打开 c:\winnt\microsoft.net\framework\v1.1.4322\Config\machine.config
查找 "processModel"里的userName="machine" 把它改成 userName="System" )
还是没有解决 :(
我认为:程序的其他地方可以运行,那证明,iis中的虚拟目录,及net3.5,还有目录权限都是设置的正常的,应该没有问题。
难道是修改web.config里面的信息的时候,把里面的某个节修改出问题来了?
想到就赶紧干,找到一个确认没有问题的web.config文件,替换掉目录下的web.config文件。于是打开软件…………
哎!问题依旧。
在网上不断的搜索,不断的看,偶然间看到了一个字眼“web.config必须放到根目录下。”我再次看了一下错误提示指示的文件“源文件: C:\Program Files\pdd\pro\web.config 行: 127 ”
哦?出错的这个web.config果然不再根目录下。我在查看目录,才发现,根目录下有一个web.config,而pro目录下也有一个web.config。而我出错的那2个页面,正好在pro目录下。
删除pro目录下的web.config文件,问题解决。
这个错误整整用了我一个3个小时的时间,才得以解决。回头再看看,另我郁闷!仅仅多了一个文件,引起的错误提示却指向了其他地方。