当谈论起网站时,咱们可能据说过静态和动态这两个词,但殊不知道它们的含义,或者从字面意思了解一些殊不知道它们的区别。mysql
这一切能够追溯到网站和网络应用程序,Web应用程序是一个网站,但不少网站不是Web应用程序,例如微博是一个网站也是一个应用程序,但像有的公司的官网是网站但不是网络应用程序。同时,也会常常听到称为网站的是静态网站,称为网络应用的是动态网站。linux
接下来,咱们分别介绍静态网站和动态网站的区别。git
静态站点是最基本的网站类型,也是最容易建立的。 它不须要服务器端处理,只须要客户端。 客户端技术是HTML,CSS和JavaScript。 简单来讲,它不须要使用后端。 静态网站彻底按照其存储方式提供给用户,这意味着页面上的任何内容都不会被用户甚至网站管理员更改,除非从新设计网站或网站管理员直接进入代码进行更改。 没有任何内容存储,除了网站的实际页面;没有用户,没有评论,没有博客帖子或任何交互性。 制做静态网站不须要编程语言,从技术上讲,JavaScript是一种编程语言,但不须要建立静态站点。 可是,若是一个站点使用JavaScript,但没有PHP或任何其余编程语言,它仍然被认为是一个静态站点,由于JavaScript是一种客户端语言。sql
静态网页由“固定代码”构成,除非网站开发人员进行更改,不然网页上的任何内容都不会发生变化。 能够把它想象成一个企业宣传册。 这就是为何静态网站有时被称为小册子网站的缘由,由于它们会为您提供大量与手册相同的信息。所以,若是须要建立一个只须要获取信息而且不会按期更新的网站,那么建立静态网站会更加简单而且可能更有效。数据库
有一种简单的方法能够肯定网站是不是动态的。 若是用户能够与它进行交互,那么它就是一个动态网站。 所以,咱们可能访问的大多数网站都是动态网站,不管是知乎,豆瓣,Facebook仍是Digital-Tutors,用户均可以与网站进行交互,单单能点击网站中的连接并不能说明问题,像是评论帖子,建立用户我的资料或进行预订更能证实。编程
动态站点使用PHP等语言与存储在数据库中的信息进行交互。 所以,动态网站的建立要复杂得多且成本高昂。 不只须要Web托管,还必须建立数据库或服务器。 用于建立动态站点的语言也比客户端语言复杂得多。后端
大多数动态网站利用内容管理系统来管理他们的内容。一般,开发人员将为其客户建立自定义CMS(使用PHP和MySQL),但这不是必需的。有大量免费系统可供您使用,如WordPress,Drupal和Joomla。您可能会据说PHP和ASP.NET用于动态生成HTML。这实际上只是意味着那些编程语言能够经过指导,改变和编写HTML,而无需人员实际进入代码并进行更改。一般与动态站点相关的另外一个术语是CRUD,它表明建立,读取,更新和删除。当您使用动态站点时,全部这四件事都会发生,由于它们指的是数据库的功能。想一想一个博客。在任何博客平台中,不管如何都要成功,您必须可以建立内容,而后才能在页面上阅读或查看该内容。您应该可以更新或编辑您的帖子,而后也能够选择删除它们。全部这些工做都发生在数据库中。内容管理系统使这一过程成为可能。服务器
以上内容就是静态网站和动态网站的区别,接下来咱们了解一下如何部署动态网站环境。网络
LNMP 动态网站部署架构是一套由 Linux + Nginx + MySQL + PHP 组成的动态网站系统解决方案,具备免费、高效、扩展性强且资源消耗低等优良特性。架构
一.准备工做
在使用源码包安装服务程序以前,首先要让安装主机具有编译程序源码的环境,他须要具有 C 语言、C++语言、Perl 语言的编译器,以及各类常见的编译支持函数库程序。所以请先配置稳当 Yum 软件仓库,而后把下面列出的这些软件包都通通安装上,在Linux服务器中使用wget命令下载LNMP动态网站部署架构所需的16个软件源码包和1个用于检查效果的论坛网站系统软件包。
建立一个名为 mysql 的用户,专门用于负责运行MySQL 数据库,解压、编译、安装 MySQL 数据库服务程序,service 命令启动 mysqld 数据库服务。
三.配置 Nginx 服务
Nginx 是一款至关优秀的用于部署动态网站的轻量级服务程序,它最初是为俄罗斯门户站点而开发的,因其稳定性、功能丰富、占用内存少且并发能力强而备受用户的信赖。目前国内诸如新浪、网易、腾讯等门户站点均已使用了此服务。
四.配置PHP服务
PHP(Hypertxt Preprocessor,超文本预处理器)是一种通用的开源脚本语言,发明于 1995年,它吸收了 C 语言、Java 语言及 Perl 语言的不少优势,具备开源、免费、快捷、跨平台性强、效率高等优良特性,是目前 Web 开发领域最经常使用的语言之一。
具体配置服务过程,参考《Linux就该这么学》,书里详细介绍了各个步骤的代码实现,清楚直观,是实现配置的好帮手。