您需要了解的有关内容管理系统的所有信息

对于一般的上网者来说,浏览内容很容易。打开一个链接,页面就会出现。但幕后发生了什么?以下是您最喜欢的CMS如何处理业务。...

对于一般的上网者来说,浏览网页内容很简单。你打开一个浏览器,输入一个网址,瞧!页面显示。但另一方面,有一些软件正在努力为你服务。大量的服务器正在利用内容管理系统来创建和服务您喜爱的内容。

everything-about-cms

当你从CMS“打开”一个页面时会发生什么?让我们看看将内容带到屏幕的系统的不同部分。

早期网络

web托管的改进

how cms work simple

上世纪90年代末,当网络开始兴起时,有许多组件使用户能够轻松访问他们喜爱的网络内容。事情已经从直接从托管服务器获取网页发展到更复杂的系统:

  • 通过私有实体更容易地访问域名系统注册,这允许我们现在称为域名的任意标签与IP地址相关联。这使得用户很容易找到自己喜欢的网站。
  • 超文本传输协议(HTTP)提供了通过internet发送信息的标准方法。这使得个人和组织有必要将他们的内容以HTML格式提供,这样任何人都可以使用兼容的浏览器来阅读。
  • Web服务器出现了,其目的是等待对Web页面的请求并发回页面。这使得管理员可以轻松地扩展和保护其宿主环境。

在此期间,浏览器变得免费,互联网服务提供商如美国在线(AOL)提供无限的拨号接入,用户从封闭的社区(如BBS系统)迁移到开放的、基于web的内容。但是,尽管对信息有需求,生态系统的一部分仍然受到影响。

web创作中的缺点

创建所有这些早期网站的过程仍然以手工**HTML页面为中心。这通常会导致内联样式和大量非常定制的代码,特别是对于当今的“动态”网站(例如,用Perl等语言进行的电子商务)。此外,发布网站的过程仍然需要FTP传输和web托管方面的技术知识。

然后,更多用户生成的内容开始以“个人资料”网站的形式出现,如雅虎和MySpace。Blogger和LiveJournal这样的博客服务更进一步,而桌面“网页编辑器”使得创建一个(不好看的)网页而不知道任何标记成为可能。这些特性启发了当今的通用内容管理系统,它允许用户轻松地:

  • 创建格式丰富的新页面。
  • 将页面排列到网站层次结构中。
  • 管理页面上的媒体,如图像。
  • 允许其他用户与网站交互,包括创作自己的页面。

在下面的部分中,我们将详细介绍CMS如何使这些任务变得如此简单。

cms的组件

目前有许多CMS应用程序可用,但大多数都有以下共同点:

  • 它们是用特定的编程/脚本语言构建的。与HTML不同,HTML只是一种标记,编程语言允许web页面执行一些操作,比如确定谁在使用它们,或者基于搜索获取结果。
  • 它们使用数据库来存储页面内容、用户/密码列表或表单提交的输入。
  • 他们利用网络服务器。它将执行页面文件(及其编程),并将生成的HTML返回给访问者的浏览器。

how cms work stack

我们将在下面依次查看每一个。

cms程序设计语言

不同cmse之间的主要区别之一是它们所支持的编程语言。编程语言用于使站点“动态”,也就是说执行计算或其他逻辑。这些操作可以简单到在页脚的版权中显示当前年份,也可以添加和显示数字报表。

所有主要的网络编程语言至少都有一个CMS,包括:

  • PHP:WordPress、Drupal、Joomla
  • ASP.NET:DotNetNuke(DNN CMS),翁布拉科
  • 蟒蛇:Django,Plone
  • 爪哇:户外,木兰

在这些语言(以及其他语言)中,PHP已经成为创建内容管理系统的领跑者,原因有两个。首先,它是开源的,一开始并不是所有语言都是开源的。因此,在许多小型网站的廉价托管计划中,它是一种免费的语言。此外,从大多数方面来看,它是一种简单的语言,允许新用户将自己的功能侵入自己的网站。最后,apacheweb服务器从很早就将PHP作为一个模块。因此,建立世界领先的网络服务器是快速和简单的。

尽管其他一些语言已经取得了与PHP相比的进步(例如,.NET现在是开源的),但它们要想从WordPress之类的公司获得可观的市场份额还需要一段时间。

cms数据库

给定CMS的编程语言还考虑了它所支持或完全需要的数据库。PHP对MySQL有很好的支持,尽管使用它的cmse通常也可以使用PostgreSQL或SQLite。同样,dnncms支持microsoftsqlserver,而Alfresco支持企业级和Java友好型数据库,如Oracle和db2。最后,您用于CMS的数据库也可能由您的托管环境提供的任何数据库驱动。你的博客的托管帐户几乎肯定会让你使用MySQL,而你的公司可能只使用Oracle。

除了应用程序的文件(页面模板、加载项等)、媒体(图像和视频)和某些配置之外,数据库存储了大多数CMSE的大部分内容。但是给定页面上的文本、媒体文件的路径以及它所在的URL通常存储在DB表中。

cms web服务器

最后,CMS是一个web应用程序,因此需要一个web服务器。通过使用各种模块,Apache可以支持上述四种语言等等。越来越流行的较新的web服务器,如nginx和lighttpd,也通过附加组件支持不同的语言集。

web服务器将执行站点的文件。这些文件类型(.PHP、.JSP等)通常只是混合了编程语言代码的HTML标记。当web服务器处理页面时,它会在该语言的模块/插件的帮助下执行遇到的任何编程代码。当它处理完一个页面时,编程代码将被一些浏览器友好的内容所取代。

how cms work php file

如果仔细观察上面的代码,您会发现代码实际上通过“获取”页眉和页面模板来帮助构建页面。为了使事情更复杂,一个文件可能会调用一个或多个其他文件以获得帮助。当我们在下面几节中查看对CMS的一些实际请求时,请记住,运行“PHP文件”实际上可能需要运行许多。

行动中的cms

描述CMS最简单的方法是采取几个示例操作,并对每个操作的步骤进行遍历。与前面的示例一样,这些过程从对页面的请求开始,到web服务器将一些HTML(和CSS/Javascript)发送回浏览器结束。但是,假设一个基于PHP的CMS,我们将在下面探索其中的一些步骤。

请求页面

与CMS最基本的交互是普通用户请求它的一个页面。例如,以这篇关于MakeUseOf的文章为例。它有一个URL,但在该位置的目录中没有实际的文件。当读者的浏览器请求一个URL时,web服务器运行CMS的一个PHP文件,例如索引.php文件。

how cms work show url

PHP页面通过查询数据库中的CMS页面及其元数据中的匹配URL来处理请求(同样,URL的位置没有实际的文件)。然后,它将从数据库中读取页面的内容(普通文本和图形以及小部件)和元数据(标题、它使用的模板等),并返回页面的HTML供浏览器呈现。简而言之,它使用URL来选择数据库中要使用的页面记录。

登录

同样,想要登录到该站点的用户(例如,要查看“仅限成员”页面)将需要提供凭据。当他们试图访问有问题的页面时,DB将包含指示该页面需要登录的权限。

how cms work login

在像这样的页面上输入用户名和密码登录.php,它将在数据库中查询所提供用户名的密码,进行比较以确保它们匹配,并根据需要将用户发送回其请求的页面。

how cms work login

更新页面

在CMS中更新页面通常需要访问其管理屏幕,对页面内容进行更改,并重新保存/重新发布页面。例如,WordPress包含wp admin页面/邮政.php. 它将首先检查用户是否已登录,如果已登录,则检查用户是否是管理员。接下来,它将在数据库中查询表示用户要修改的页面的内容,填充编辑控件,例如文本区域和图像选择器。

how cms work update

用户可以与这些控件交互(例如更改文本或替换标题图像),完成后单击“保存”或“发布”按钮。此时,管理屏幕将获取新填写的值并在数据库中更新它们。

how cms work update

CMSE使web创作变得可访问

尽管在内部它们是复杂的应用程序,但表面上,像WordPress这样的cmse使非技术用户在web上的创作变得容易。有人谁想要发布一个简单的博客可以注册一个便宜的托管帐户,点击几个按钮,并有一个CMS准备在几分钟内去。多花几美元,托管公司甚至可以管理它的更新和维护。

你在某个特定的CMS上有网站或博客吗?拥有内容管理系统会让你的工作更轻松吗?或者你更喜欢像以前那样把HTML上传到你的主机帐户上?让我们知道在评论中,如果你是一个CMS爱好者或老式的HTML牧马人。

  • 发表于 2021-03-13 12:08
  • 阅读 ( 207 )
  • 分类:IT

你可能感兴趣的文章

您需要了解的有关内容管理系统的所有信息

...一些软件正在努力为你服务。大量的服务器正在利用内容管理系统来创建和服务您喜爱的内容。 ...

  • 发布于 2021-03-13 12:08
  • 阅读 ( 207 )

如何在windows中设置第二个硬盘:分区

...特定的容量限制;如果您没有足够的空间来存放数据,则需要删除内容或购买一个新驱动器。 ...

  • 发布于 2021-03-14 11:23
  • 阅读 ( 180 )

windows备份和还原指南

...总会发生。除非你愿意在一瞬间丢失所有的数据,否则你需要一个好的备份程序。同意,但还没解决?那你就到了正确的地方! ...

  • 发布于 2021-03-15 08:58
  • 阅读 ( 214 )

有关xbox one外部硬盘的所有信息

...部硬盘添加一些额外空间。在本文中,我们详细介绍了您需要了解的关于Xbox One外部硬盘的所有内容。 ...

  • 发布于 2021-03-18 15:38
  • 阅读 ( 205 )

有关whatsapp隐私设置的所有信息

...能记录应用程序的使用情况,所以如果你使用Android,你需要担心的不仅仅是WhatsApp。当然,这只是在你打开了网络和应用程序活动的情况下。 ...

  • 发布于 2021-03-20 07:53
  • 阅读 ( 241 )

使用bookfusion为您的企业或组织创建和管理自定义数字图书馆

... 这就是为什么您的业务或组织需要BookFusion。 ...

  • 发布于 2021-03-22 14:53
  • 阅读 ( 165 )

如何检查windows 10 pc的运行状况(并保持其状态)

...面是如何使用这些报告来了解硬件的运行情况,以及可能需要修复的特定问题的一些提示和解决方法。你还有什么建议吗?在评论中与我们分享! ...

  • 发布于 2021-03-23 14:44
  • 阅读 ( 382 )

5个私人网站在你不知情的情况下了解你

... 你甚至不需要输入任何东西。该网站将立即显示您的IP地址,以及它能够从中了解到的关于您的一切信息,包括您的地理位置。 ...

  • 发布于 2021-03-24 23:38
  • 阅读 ( 242 )

您应该了解的有关windows pc的10项重要功能

...你运行的是什么版本的Windows时,你是否僵住了?如果你需要技术支持,你能说出你已经安装了多少内存吗? ...

  • 发布于 2021-03-26 07:49
  • 阅读 ( 199 )

如何检查linux内核和操作系统版本

...知道你的系统有哪个版本的Linux和内核是至关重要的,你需要这些信息来知道安全补丁是否适用于你的系统。 有多种方法可以找到这些信息,其中一些方法可以在任何机器上使用。然而,其他的并不普遍。例如,hostnamectl只适用...

  • 发布于 2021-04-01 13:11
  • 阅读 ( 191 )
sdb36138
sdb36138

0 篇文章

相关推荐