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

这一切可以追溯到网站和网络应用程序,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. 第39章 引用令牌 - Identity Server 4 中文文档(v1.0.0)

    访问令牌有两种形式 - 自包含或引用. JWT令牌将是一个自包含的访问令牌 - 它是一个带有声明和过期的受保护数据结构.一旦API了解了密钥材料,它就可以验证自包含的令牌,而无需与发行者进行通信.这使 ...

  2. python3中json模块的用法

    __author__ = "JentZhang" import json user_info = {"} # 将字典转换为JSON字符串 json_str = json. ...

  3. WPF 中 DispatcherTimer 计时器

    在 WPF 中涉及到界面操作的计时器时,一定要使用 DispatcherTime,DispatcherTimer是为 WPF 专门设计的,不然的话会提示界面资源被其他线程所拥有而无法更新界面.Disp ...

  4. Java开发笔记(三十一)字符类型的表达

    前面介绍的Java编程,要么是与数字有关的计算,要么是与逻辑有关的推理,充其量只能实现计算器和状态机.若想让Java运用于更广阔的业务领域,就得使其支撑更加血肉丰满的业务场景,而丰满的前提是能够表达大 ...

  5. 配置javaJDK环境

    1.官网下载JDK包 2.解压包 3.打开vi /etc/profile文件添加一下内容 export JAVA_HOME=/usr/jdk1.8.0_121 #你的jdk所在的目录 export C ...

  6. java日期 Calendar类的使用

    举例: import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; public clas ...

  7. 【代码笔记】Web-CSS-CSS Text(文本)

    一,效果图. 二,代码. <!DOCTYPE html> <html> <head> <meta charset="utf-8"> ...

  8. 广州.NET微软技术俱乐部 - 新秀计划

    本文正在写草稿中, 发布时会在群里单独通知

  9. Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee

    双击 勾上蓝色保存

  10. Asp.Net Core 实现谷歌翻译ApI 免费版

    由于谷歌翻译官方API是付费版本,本着免费和开源的精神.分享一下用 Net Core 实现谷歌翻译API的代码. 项目引用的Nuget 包: ChakraCore.NET Newtonsoft.Jso ...