- Choosing an Open Source CMS: Beginner's Guide
- Nirav Mehta
- 409字
- 2021-05-21 20:22:12
Understanding CMS technologies
We haven't discussed the technical aspects of CMSs so far. Let's quickly review them here.
Web-based CMSs have a simple three-tier architecture, just like any other web application: Browser → Web Server → Database Server. Internally, different CMSs may have different system designs. However, the overall components and flow still remain the same. Take a look at Joomla!'s architecture in the following figure:

And here's Drupal's execution system flow:

Most CMSs will have similar design, which consists of a few core components, plug-in systems, and template handlers. The flow will be similar too—process templates, permissions, content blocks, and actual content.
Note
You can learn more about Joomla! architecture at http://dev.joomla.org/content/view/1137/80/.
Find how Drupal's flow works at http://drupal.org/getting-started/before/overview.
Apart from the system architecture similarities, you may have noticed another similarity in top CMSs—the backend technologies that they use. Most are written in PHP with MySQL as the database.
PHP is most popular for CMSs
PHP (http://www.php.net) was designed "to solve the Web problem", and it is no surprise that most CMSs are written in PHP. PHP is easy to learn and is very powerful. It allows building solid frameworks and writing elegant business logic. On the other hand, PHP also forgives badly written code. So when you select a CMS, make sure to go for one that has good code. Popular CMSs typically have high-quality code, so you can rest assured.
If PHP is not your preference, you can find CMSs in .Net, Java, Ruby, Perl, and Python too. All of them have their own strengths.
But why does the technology choice matter?
A technology choice matters because you will host your CMS on a web server, and it needs to support the technology your CMS is using. Especially if you are on shared hosting, you must check if your host supports the programming language (that is, PHP, or Perl, and so on) and database (that is, MySQL, MS SQL, and so on) that you are going to use. There may be other system requirements such as the GD library for a photo gallery. Ensure that your existing infrastructure supports those requirements. Otherwise, you may need to change the server configuration, service provider, or the CMS.
That's enough of technical background for us. In the next few chapters we will learn how to select a CMS for which we will revisit the technology. For now, let's summarize what we covered in this chapter.
- Vulkan學(xué)習(xí)指南
- PS是這樣玩的:輕松掌握 Photoshop 通關(guān)秘籍
- 基于元胞自動機的城市路網(wǎng)交通流建模與仿真
- 商用級AIGC繪畫創(chuàng)作與技巧(Midjourney+Stable Diffusion)
- 設(shè)計模式之禪(第2版)
- AI圖像處理:Photoshop+Firefly后期處理技術(shù)基礎(chǔ)與實戰(zhàn)
- After Effects CC 2019 影視后期特效合成案例教程
- Building Websites with ExpressionEngine 1.6
- 人人都能玩賺AI繪畫
- SolidWorks 2020中文版從入門到精通
- 中文版Photoshop CS6完全自學(xué)手冊(超值版)
- 邊做邊學(xué):CorelDRAW X6圖形設(shè)計案例教程(第2版)(微課版)
- Creo 5.0從入門到精通(第2版)
- Illustrator 2024實用教程
- 3ds Max 2014/VRay效果圖制作實戰(zhàn)從入門到精通