Localhost和打开html文件之间的区别

时间:2016-10-23 16:06:35

标签: javascript html css server localhost

使用localhost中的服务器运行文件的根本区别是什么,打开file:///Users/$user_name/$your_directory/index.html这样的文件,假设没有后端,它只是前端并包含html / css / js
 这又如何影响与其他服务器的交互,即。 ajax请求?
我很抱歉,如果这太宽泛了,但我还没有找到对这些基本问题的可靠答案。

3 个答案:

答案 0 :(得分:10)

从根本上说,假设您在某个时刻将结果存储在实际的Web服务器上,前者与目标环境匹配,而后者则不匹配。浏览器处理从Web服务器(甚至localhost Web服务器)提供的本地文件和文件以不同方式,尽管非常相似。其中一个方面是编码:从Web服务器检索文件时,确定数据编码的过程与打开本地文件不同。

  

这又如何影响与其他服务器的交互,即。 ajax请求?

这是他们以不同方式处理的主要方式之一,甚至因浏览器而异。从file:// URL加载的页面源自同源策略的原点null。某些浏览器(如Chrome)不允许原始null的原始资源共享完全,即使您尝试与之交谈的服务器具有广泛开放的CORS策略({ {1}})。其他人(如Firefox)允许原始*与通配符匹配。

通常,为了获得最佳结果,请确保您的开发环境以重要方式与您的部署环境匹配。这意味着使用Web服务器进程而不是本地文件进行开发。大多数IDE都会乐意为您提供该流程;如果没有,Apache或Nginx并不难安装。

答案 1 :(得分:0)

答案很简单, 如果您还没有为“ index.html”创建活动后端,则不会生效。例如,“-” localhost”和“ index.html”这次将是相同的。

但是当您开始使用后端时,大多数后端进程都需要一个活动服务器(需要localhost)。

例如- 1。 fetch('local.json')... //获取json或任何文件均不适用于本地文件。 2。 您可能不会与mysql / django等数据库保持一致。 表示它会导致注册/登录错误,在数据库中存储任何图像/视频/文档等。

在本地主机上工作更好,这是最简单的方法:-

VScode(IDE) >> extenctions >> live server (just need to click a button to make 
localhost and click again to stop localhost)

https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer

答案 2 :(得分:-3)

我认为这不会产生任何不同。 购买铬有一个例外!有时我看到一个html文件是否添加了一些CDN链接,然后它没有专门加载到chrome中的html但是如果你在FF或IE中尝试psame文件,它可以工作。 我遇到了这个问题,因此我总是将它放在本地IIS默认网站下。