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

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

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

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


当前回答

网站主要是提供信息。从这个意义上说,http://cnn.com和http://php.net是网站,而不是web应用程序。

Web应用程序主要允许用户执行操作。谷歌Analytics、gmail和jslint是web应用。

它们不是完全排他性的。大学网站可能会提供位置、学费、课程等信息;它可能会有允许教师管理成绩和课程材料的网络应用程序,学生注册和退出课程的应用程序等等。

其他回答

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

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

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

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

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

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

网站可能只是静态内容,而web应用程序可能有动态内容。这是一条非常模糊的界线。

两者的功能和表现相似,但在以下方面仍有不同。

Web应用程序:

我们不能在一个web应用程序中同时包含c#和VB页面。 我们可以建立多个项目之间的依赖关系。 在部署后不重新编译就不能编辑单个文件。 适合多个开发人员联合工作进行创建、测试和部署的企业环境。

网站:

可以在单个网站中混合使用VB和c#页面。 不能建立依赖关系。 在部署后编辑单个文件。 正确的选择,当一个开发人员将负责创建和管理整个网站。

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

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

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