[英]Display videos in website, working in Visual Studio debugger but not in Release version
我正在一个必须显示许多视频的网站上工作。 我使用以下代码执行此操作:
<video id="myVideo" width="432" height="240" controls autoplay loop>
<source src=@Model[1].VideoPath type="video/mp4">
Your browser does not support the video tag.
</video>
@Model [1] .VideoPath是视频的路径(使用ASP.NET-MVC)。 在调试过程中,使用相对路径(例如“ ../../videosFolder/videoName.mp4”)可以正常工作。
现在要发布,它不再起作用。 如果我弄错了相对路径,我会切换到绝对路径(“ C:\\ inetpub \\ wwwroot ... \\ videoName.mp4”)。
我已确定该视频存在,网站本身正在打印该路径,并且该路径正确。 应用程序池正在以具有完全特权的用户身份运行,任何人都可以读取inetpub转发的所有文件夹...为什么现在不起作用?
更新:我被要求上传“实时HTML”。 我不确定自己是否正确,但是检查得到的元素(再次,路径是正确的):
<video id="parentVideo" width="432" height="240" controls="" autoplay="" loop=""> <source src="C:\inetpub\wwwroot\correctPath\myVideo.mp4" type="video/mp4">
"src="C:\\inetpub\\wwwroot\\correctPath\\myVideo.mp4"
是您的问题。由于安全限制,您无法访问最终用户本地计算机上的文件(即使可以,如何知道路径,以及如何假设该文件存在?)。
该值应该是指向视频可在线访问的位置的http URL,例如src="https://www.example.com/videos/myVideo.mp4"
(大概是在服务器上?)。
该原则适用于所有内容,而不仅仅是视频(即,在网页中,您必须始终通过URL而不是通过磁盘路径来引用资源)。
您可能还需要在IIS中配置mime类型/文件扩展名设置,以确保服务器支持您正在提供的所有文件类型。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.