|What are the functions of the principal components?
The Linux operating system provides the platform for secure and reliable operation of the web server. Access to the file system is governed by file permissions and enforced by the operating system. The operating system also provides interfaces to the networks and enforces process and user security.
Increasingly users expect to be provided wuth dynamic content, which may be influenced by time, current events, the user’s location or personalisation. With these more complex websites, static HTML pages are largely replaced by applications. One of the most popular scripting languages is PHP and there are a wide range of applications available including content management systems (CMS) like Joomla!, forums, bulletin boards, shopping carts, etc.
For a dynamic site, the Apache web server is configured to recognise when a script needs to be run, this may be through a combination of file extensions and default settings. For example, if a website’s home page is requested and the server has PHP installed, Apache will seek an index.php file in the root directory if there is no index.html file in the website root directory. It is this mechanism which is used to initialise applications like Joomla! The PHP scripts will be used to store and retrieve information and to render the HTML page layouts for transmission back to the user’s browser by the Apache web server.
Typically a PHP website will also use a MySQL database to store content and configuration information. It is possibel to build sites where the contents are storeed in flat text files, but the use of relational databses like MySQL gives greater flexibility. The interaction between the Apache webserver and the MySQL database is handled by PHP.