在VPS上运行后,我的应用程序出现问题。
我在VPS上安装了IIS,删除了DefaultWebsite,并添加了另一个。一切看起来都不错,网站启动,但我无法访问内容,脚本,模板等文件夹中的任何文件上。这意味着我的网站上没有任何图片和样式。
我尝试了IIS_IUSRS的大权限,但文件仍然无法正确显示。网站与系统在同一分区上,我认为这是问题所在,但我无法移动它。我只有一个分区:-(任何解决方案吗?
答案 0 :(得分:1)
以上都不对我有用。起作用的原因(我记得曾经发生的事情)是缺少MIME类型映射使IIS感到困惑。如果可以将不同类型的文件放在不同的文件夹中,这很容易诊断为问题。
轻松修复是IIS下在服务器,网站或虚拟文件夹上的“ MIME类型”部分。只需添加“ * .foo”和“ application / octet-stream”作为MIME类型,即“已经发送字节了!”
答案 1 :(得分:0)
请检查IIS中的用户。网站 - >基本设置 - >连接为......(如果我没记错的话)
默认情况下,IIS中的用户是IUSR。您必须更改为IIS_IUSRS。然后你的权限就可以了。
答案 2 :(得分:0)
您需要添加web.config
文件,以便在包含具有以下内容的静态文件的每个文件夹中提供静态文件:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
<staticContent>
<clientCache cacheControlMode="UseMaxAge" cacheControlMaxAge="7.00:00:00" />
</staticContent>
<handlers accessPolicy="Script,Read">
<!-- For any request to a file exists on disk, return it via native http module. AccessPolicy="Script" above is to allow for a managed 404 page. -->
<add name="StaticFile" path="*" verb="*" modules="StaticFileModule" preCondition="integratedMode" resourceType="File" requireAccess="Read" />
</handlers>
</system.webServer>
</configuration>
答案 3 :(得分:0)
我还添加了此代码以使应用运行。没有它应用程序不起作用,但文件显示正确: - (
<system.webServer>
<validation validateIntegratedModeConfiguration="false"/>
<handlers>
<remove name="BlockViewHandler"/>
<add name="BlockViewHandler" path="*" verb="*" preCondition="integratedMode" type="System.Web.HttpNotFoundHandler"/>
</handlers>
</system.webServer>
答案 4 :(得分:0)
就我而言,我有一个扩展名为public class Third {
public void m1(Child c) {
Child d = c.clone();
}
}
的文件-IIS中的一个未知的mime类型。
我的404文件未找到问题已通过更新站点web.config来解决,以为文件扩展名cache
添加mimeMap,如下所示:
cache
的更多信息
答案 5 :(得分:0)
可能不是一个常见的问题,但我不小心创建了一个带有默认页面路径的虚拟目录,这把事情搞砸了。我不得不打开 applicationhost.config 文件,并删除虚拟目录(好吧,可能可以通过其他方式删除它,但直到我打开文件才弄清楚,因为我已经打开了它,我去了并保存更改)。