- 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.
- JasperReports for Java Developers
- AutoCAD 2018中文版從入門到精通
- CAD/CAM軟件應(yīng)用技術(shù)
- SolidWorks快速入門教程(2022中文版)
- Photoshop插畫藝術(shù)火星風(fēng)暴
- SOLIDWORKS中文版實用教程
- AutoCAD 2020中文版入門、精通與實戰(zhàn)
- Origin科技繪圖與數(shù)據(jù)分析
- Adobe創(chuàng)意大學(xué)Premiere Pro影視剪輯師標準實訓(xùn)教材(CS6修訂版)
- 3ds Max影視動畫角色設(shè)計技法教程
- Joomla! 1.5 JavaScript jQuery
- Flash CS6 動畫制作實戰(zhàn)從入門到精通
- 跟著視頻學(xué)Excel數(shù)據(jù)處理:函數(shù)篇
- 前端函數(shù)式演進
- 解密AI繪畫與修圖:Stable Diffusion+Photoshop