什么是静态网页服务器?

4

目前我一直在尝试使用 grunt,将使用 grunt-contrib-qunit,似乎需要使用 grunt-contrib-connect

让我真正困惑的是,grunt-contrib-connect 启动了一个静态web服务器。这个静态让我很困惑。在开发过程中,我是否需要一个 web 服务器来处理我的静态文件,如图像、html、css、js 等?

我目前正在学习 PHP 并使用 xampp(其中包括 apache)。它与 Apache 等 Web 服务器有何不同?由于它们将使用不同的端口,所以我是否能够同时使用它们?

2个回答

7

静态Web服务器仅提供静态内容的Web服务器:客户端请求时已经存在的任何文件(包括html、js和css文件)。

静态Web服务器不适用于提供不存在但需要动态生成的内容(例如从数据库中提取某些信息,使用服务器端语言如PHP等进行构建)。


4

Connect是一个使用JavaScript和Node编写的服务器。这里有一个不错的介绍,还有一个简单的教程。与本地apache / nginx设置相比,使用它的优点是要配置的东西要少得多;很多Node项目完全用HTML / CSS / JavaScript编写,因此它们不需要额外的东西(如PHP,MySQL等)。这意味着您可以在几分钟内启动并运行任意数量的服务器,以运行需要放在服务器上的应用程序。

实际上,grunt-contrib-connect文档给出了在不同端口上运行多个服务器的示例:

grunt.initConfig({
  connect: {
    site1: {
      options: {
        port: 9000,
        base: 'www-roots/site1'
      }
    },
    site2: {
      options: {
        port: 9001,
        base: 'www-roots/site2'
      }
    }
  }
});

如果您不覆盖 Apache 安装所在的端口(我相信默认是 80 端口),那么您将能够使用本地 xampp 安装运行连接服务器。


我有一个问题,涉及到同时运行两个服务器。假设我在localhost:80/MyProject/index.php上运行了一个服务器,然后我还在端口4000上运行了grunt connect,并启用了livereload。当我在localhost:80上时,如何触发livereload? - theUnknown777
你需要的是可以在浏览器中切换开关的livereload扩展程序:http://feedback.livereload.com/knowledgebase/articles/86242-how-do-i-install-and-use-the-browser-extensions- - 就我个人而言,我从未同时使用两个livereload实例,所以我不知道这是否有效,请尝试一下并看看会发生什么。 :) - Ben

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接