看起来像一个容易修复的错误,但我一直在敲打这个问题。应用程序在VS内置Web服务器中运行良好,但在使用IIS7将其移动到开发服务器后却没有。
default.aspx文件引用页面指令...
中的母版页<%@ Page Title="" Language="C#" MasterPageFile="~/Site1.Master" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="MyApp.Default" %>
Site1.Master与default.aspx一起位于站点的根目录中。此时,文件夹权限将被读取到Everyone。
这是一个Intranet站点,因此IIS授权被匿名禁用,启用了Windows身份验证,启用了模拟。应用程序池是.NET v4,集成了托管管道。
我查看了这个网站和其他人的答案,而其他人也遇到了同样的问题,原因不同。
感谢。
答案 0 :(得分:1)
当我们将网站从一台服务器移动到另一台服务器时,我遇到了同样的问题。我们的新网站是在一家优秀的托管公司(SoftSysHosting.com)的VPS上,他们的技术支持创建了我们的网站/应用程序所在的虚拟目录。这解决了!
答案 1 :(得分:0)
之前我遇到过类似的问题。根本问题是我认为路径将保持不变,而不是。登录您的开发服务器并导航到您的母版页。在资源管理器中打开页面的属性并查看路径。现在,在应用程序的测试页面中运行HttpRuntime.AppDomainAppPath()并查看应用程序的运行位置。从那里你可以看到发生不匹配的地方。
答案 2 :(得分:0)
假设您拥有像“WebApplication1”这样的图片中给出的网站或网络应用程序的根目录。这是网站的根文件夹
因此,只需将根文件夹“WebApplication1”中的内容复制并粘贴到FTP地址的“根文件夹”“/”即可。
不:点不与根文件夹WebApplication1一起复制。
只需复制根文件夹内的内容
你的目标结构
== + WebApplication1
====属性
====全球化志愿服务青年
==== PropertiesSite1.Master
====的Web.config
==== WebForm1.aspx的
答案 3 :(得分:0)
我可以通过删除Site.Master第一行中的CodeFile =“...”选项来解决此问题:
<%@ Master Language="C#" AutoEventWireup="true" CodeFile="Site.Master.cs"
inherits="CG.PresentationLayer.WA.MasterPage" %>
成:
<%@ Master Language="C#" AutoEventWireup="true" Inherits="MyApp.MasterPage" %>