当谈论起网站时,我们可能听说过静态和动态这两个词,但却不知道它们的含义,或者从字面意思了解一些却不知道它们的区别。

这一切可以追溯到网站和网络应用程序,Web应用程序是一个网站,但很多网站不是Web应用程序,例如微博是一个网站也是一个应用程序,但像有的公司的官网是网站但不是网络应用程序。同时,也会经常听到称为网站的是静态网站,称为网络应用的是动态网站。

接下来,我们分别介绍静态网站和动态网站的区别。

静态站点是最基本的网站类型,也是最容易创建的。它不需要服务器端处理,只需要客户端。客户端技术是HTML,CSS和JavaScript。简单来说,它不需要使用后端。静态网站完全按照其存储方式提供给用户,这意味着页面上的任何内容都不会被用户甚至网站管理员更改,除非重新设计网站或网站管理员直接进入代码进行更改。没有任何内容存储,除了网站的实际页面;没有用户,没有评论,没有博客帖子或任何交互性。制作静态网站不需要编程语言,从技术上讲,JavaScript是一种编程语言,但不需要创建静态站点。但是,如果一个站点使用JavaScript,但没有PHP或任何其他编程语言,它仍然被认为是一个静态站点,因为JavaScript是一种客户端语言。

静态网页由“固定代码”构成,除非网站开发人员进行更改,否则网页上的任何内容都不会发生变化。可以把它想象成一个企业宣传册。这就是为什么静态网站有时被称为小册子网站的原因,因为它们会为您提供大量与手册相同的信息。因此,如果需要创建一个只需要获取信息并且不会定期更新的网站,那么创建静态网站会更加简单并且可能更有效。

有一种简单的方法可以确定网站是否是动态的。如果用户可以与它进行交互,那么它就是一个动态网站。因此,我们可能访问的大多数网站都是动态网站,无论是知乎,豆瓣,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 数据库,解压、编译、安装 MySQL 数据库服务程序,service 命令启动 mysqld 数据库服务。

三.配置 Nginx 服务

Nginx 是一款相当优秀的用于部署动态网站的轻量级服务程序,它最初是为俄罗斯门户站点而开发的,因其稳定性、功能丰富、占用内存少且并发能力强而备受用户的信赖。目前国内诸如新浪、网易、腾讯等门户站点均已使用了此服务。

四.配置PHP服务

PHP(Hypertxt Preprocessor,超文本预处理器)是一种通用的开源脚本语言,发明于 1995年,它吸取了 C 语言、Java 语言及 Perl 语言的很多优点,具有开源、免费、快捷、跨平台性强、效率高等优良特性,是目前 Web 开发领域最常用的语言之一。

具体配置服务过程,参考《Linux就该这么学》,书里详细介绍了各个步骤的代码实现,清楚直观,是实现配置的好帮手。

Linux中什么是动态网站环境及如何部署的更多相关文章

  1. 《Linux就该这么学》培训笔记_ch20使用LNMP架构部署动态网站环境

    <Linux就该这么学>培训笔记_ch20使用LNMP架构部署动态网站环境 文章最后会post上书本的笔记照片. 文章主要内容: 源码包程序 LNMP动态网站架构 配置Mysql服务 配置 ...

  2. JSP动态网站环境搭建应用中的详细步骤(Tomcat和Apache/IIS的整合)

    链接地址:http://www.cnblogs.com/dartagnan/archive/2011/03/25/2003426.html JSP动态网站环境搭建应用中的详细步骤(Tomcat和Apa ...

  3. 【转】windows和linux中搭建python集成开发环境IDE

    本系列分为两篇: 1.[转]windows和linux中搭建python集成开发环境IDE 2.[转]linux和windows下安装python集成开发环境及其python包 3.windows和l ...

  4. 第20章 使用LNMP架构部署动态网站环境

    章节概述: 本章节将从Linux系统的软件安装方式讲起,带领读者分辨RPM软件包与源码安装的区别.并能够理解它们的优缺点. Nginx是一款相当优秀的用于部署动态网站的服务程序,Nginx具有不错的稳 ...

  5. 顶 最新简捷实用的JSP动态网站环境搭建详细步骤

    阿里西西小编给您推荐这个最新简捷实用的JSP动态网站环境搭建详细步骤讲解,这里还有关于JSP 动态网站 环境 搭建 的教程,希望您能够喜欢并学到东西提升自己的知识与技能,下面是内容详细阅读: 最新简捷 ...

  6. windows和linux中搭建python集成开发环境IDE——如何设置多个python环境

    本系列分为两篇: 1.[转]windows和linux中搭建python集成开发环境IDE 2.[转]linux和windows下安装python集成开发环境及其python包 3.windows和l ...

  7. 编译LNMP部署动态网站环境

    LNMP动态网站部署架构是由一套 Linux+Nginx+MySQL+PHP 组成的动态网站系统解决方案. 以下配置环境为:Linux=RHEL7 --> Nginx=1.13 --> M ...

  8. 编译LAMP部署动态网站环境

    LAMP动态网站部署架构是由一套 Linux+Apache+MySQL+PHP 组成的动态网站系统解决方案. 以下配置环境为:Linux=RHEL7 --> Apache=2.4.33 --&g ...

  9. Linux Debian 7部署LEMP(Linux+Nginx+MySQL+PHP)网站环境

    我们在玩VPS搭建网站环境的时候,都经常看到所谓的LAMP.LNMP.LEMP,LAMP, 其中的A代表APECHE WEB驱动环境,LNMP中的N代表NGINX驱动环境,只不过海外的叫法NGINX ...

随机推荐

  1. Xamarin.Forms 开发资源集合(复制)

    复制:https://www.cnblogs.com/mschen/p/10199997.html 收集整理了下 Xamarin.Forms 的学习参考资料,分享给大家,稍后会不断补充: UI样式 S ...

  2. Linux文件权限与属性详解 之 SUID、SGID & SBIT

    Linux文件权限与属性详解 之 一般权限 Linux文件权限与属性详解 之 ACL Linux文件权限与属性详解 之 SUID.SGID & SBIT Linux文件权限与属性详解 之 ch ...

  3. 一统江湖的大前端(7)React.js-从开发者到工程师

    目录 一. 前端打怪升级指南 1.1 我应该从哪个框架开始学? 1.2 一次转职 1.3 二次转职 1.4 转职-其他 二. 为什么你应该学习React 2.1 技术栈的延伸 2.2 组件化开发 2. ...

  4. 第27章 联合网关 - Identity Server 4 中文文档(v1.0.0)

    通用架构是所谓的联合网关.在此方法中,IdentityServer充当一个或多个外部身份提供商的网关. 该架构具有以下优点: 您的应用程序只需要了解一个令牌服务(网关),并且屏蔽了有关连接到外部提供程 ...

  5. JavaScript 中,定义函数时用 var foo = function () {} 和 function foo() {}有什么区别?

    对于新手来说(本人也是新手-_-!),好像var foo = function () {} 和 function foo(){}并没有什么区别,意识里可能就认为就是两种不同的写法而已.但是,通过网上查 ...

  6. win2008R2环境配置

    1)下载系统  [https://msdn.itellyou.cn/]  选择带sp1的,这个系统是08R2中较为完善的一种 2)安装之后首先不要激活和安装.net framework   先安装ii ...

  7. VS 使用vs2017自带的诊断工具(Diagnostic Tools)诊断程序的内存问题

    前言 一般来说.NET程序员是不用担心内存分配释放问题的,因为有垃圾收集器(GC)会自动帮你处理.但是GC只能收集那些不再使用的内存(根据对象是否被其它活动的对象所引用)来确定.所以如果代码编写不当的 ...

  8. (摘)linux下yum安装redis以及使用

    1.yum install redis      --查看是否有redis   yum 源 2.yum install epel-release    --下载fedora的epel仓库 3.yum ...

  9. 封装自定义服务$http

    var httpService = angular.module('httpService', []); httpService.factory("$httpService",fu ...

  10. input框限制只能输入正整数、字母、小数、

    这篇博文大部分来自于网上,为了方便自己查阅,以及帮助他人.   1,只能输入正整数 <input onkeyup="if(this.value.length==1){this.valu ...