我被自己的网站和网络应用程序之间的区别难住了。在我看来,一个网站指向一个特定的页面,而一个网络应用程序更像是某种内容和信息的“门户”。

但让我困惑的是,web应用程序仍然是通过浏览器查看的(不是吗?),网站仍然可以动态地查看内容,这使得网站和应用程序之间的界限非常模糊。

例如,一个网站使用ASP。NET或AJAX等成为一个web应用程序,因为它可以动态和异步检索数据,或者使用PHP和CMS的网站更像一个web应用程序,因为它根据客户端的请求和数据库中的内容形成页面?

也许我在这里完全错了——web应用程序和网站之间有什么区别?


当前回答

技术上的区别根据两个特点: 1. “工作”在哪里完成 2. 什么被传输到/从服务器

Web应用程序 1. “工作”在浏览器中完成(JavaScript) 2. 正在从/向服务器传输数据 相比之下:更快

网站 1. “工作”(大部分)是在服务器上完成的 2. 呈现的页面(数据+ UI)正在从服务器传输 相比之下:更容易搜索引擎优化

其他回答

这完全是个人和主观的,但我想说的是,网站是由其内容定义的,而web应用程序是由其与用户的交互定义的。也就是说,一个网站可以由一个静态的内容存储库组成,可以分发给所有的访问者,而一个web应用程序依赖于交互,需要编程用户输入和数据处理。

例如,新闻网站是“网站”,而电子表格或协作日历则是网络“应用程序”。新闻网站向所有访问者显示本质上相同的信息,而日历则处理个人数据。

实际上,大多数内容快速变化的网站也依赖于复杂的编程(和/或数据库)后端,但至少在原则上,它们只由输出定义。另一方面,web应用程序本质上是一个远程运行的程序,它基本上依赖于处理和数据存储后端。

我们知道什么是“站点”和“应用程序”,所以我们剩下的就是Web

现在,web应用程序可能是整个网站的一部分。 网站包含了web应用程序。 虽然通常你会看到一个网站只有一个web应用程序。

例如,你有一个iPhone设备(与网站相比),它可能包含不同的应用程序:播放音乐,视频,网络浏览器等。

我不确定是否有一个绝对权威的答案,但你可以把它看作是当请求到达web服务器时发生的区别。可以通过让服务器返回一个已经生成的文件(静态内容)来处理请求,也可以将请求传递给应用程序,由应用程序生成响应并发送回浏览器(动态内容)。

这两种类型都被称为网站,但只有由应用程序生成内容的类型才被称为web应用程序。

应用程序是如何编写的并不那么重要。它可能是ASP, PHP, Ruby, JavaScript甚至C或c++。

Web应用程序是动态网站。

根据维基百科,网站是这种范式的抽象术语。

一个网站,也写为website,或简称为site,是一个集合 相关的网页通常从一个单一的网络域名服务。一个网站 托管在至少一个web服务器上,可通过网络访问,如 因特网或通过因特网的私有局域网 地址,即统一资源定位符(URL)。所有公开 可访问的网站共同构成了万维网。(来源:http://en.wikipedia.org/wiki/Website)

因此,Web应用程序是一种不论其用途的网站,实际上是一种动态网站,但网站并不是真正的Web应用程序。

在我看来,所有的现代网站都是web应用程序,包括CMS。世界上还有人编写手动静态html文件吗,我不这么认为。尽管有些网站很少有静态页面,但如果它们是通过CMS动态创建的,那么它绝对是一个CMS web应用程序。

阅读更多:

http://en.wikipedia.org/wiki/Web_application http://en.wikipedia.org/wiki/Website

There is no real "difference". Web site is a more anachronistic term that exists from the early days of the internet where the notion of a dynamic application that can respond to user input was much more limited and much less common. Commercial websites started out largely as interactive brochures (with the notable exception of hotel/airline reservation sites). Over time their functionality (and the supporting technologies) became more and more responsive and the line between an application that you install on your computer and one that exists in the cloud became more and more blurred.

如果你只是想在谈论你正在构建的东西时清楚地表达自己,我会继续将交互式小册子或名片描述为“网站”,并将实际上更像应用程序的东西描述为web应用程序。

最基本的区别是,如果一个网站有一个支持数据库,存储用户数据,并根据用户指定的标准修改用户所看到的内容,那么它可能是某种类型的应用程序(尽管我不愿意将Amazon.com描述为web应用程序,尽管它有很多非常特定于用户的功能)。另一方面,如果它主要是相互链接的静态.html文件,我将称其为网站。

如今,大多数情况下,web应用程序的大部分功能都是在客户端上运行的(根据实现方式,使用javascript或actionscript完成大部分处理),并通过http进程返回到服务器以支持数据。用户不会频繁地从一个页面移动到另一个页面,而是在一个为他们创造应用体验的“页面”上体验他们将要体验的任何东西。