2012 LAMP Server A Brief Overview Daniel Eakins Santa Fe College CTS 2356 Advanced Administration 3/21/2012
Abstract LAMP is short for Linux, Apache, MySQL, and PHP. LAMP servers are typically not Windows based. LAMPS are more stable, easier to setup and inexpensive. The software can operate on a normal PC. Page 2
Introduction The term LAMP first referred to four key components that worked remarkably well together for database hosting websites. Whether you create an account at an ISP, or a real physical server that you manually connect to the Internet, your website is running on the LAMP software. Implementing a LAMP server to help solve your data management requires that you think about computers in a different way than you might be used to. Depending on the software you wish to use a LAMP server will have zero cost. The only physical materials you will need to pay for are for the hardware to run your LAMP. LAMP runs on a series of meshed together software. Thus the term LAMP is derived from Linux, Apache, MySQL, and PHP. Depending on the type of version you download your LAMP software from the distributors will have a help and support sections in case you run into trouble. Take for example Ubuntu. Ubuntu offers its software for free to the general public. To download the latest version of Ubuntu Server edition you need to visit their homepage at Ubuntu.com and go to the top tab called Download with a sub navigation called Ubuntu server (Figure 1). The latest version for the server edition is 11.10. If you want long term support or LTS, then I would recommend downloading the 10.04 LTS. Section 1 So what is bundled in my LAMP? Figure 1 Choosing to create a LAMP server is the best way for you to gain complete control over your web site. With more and more complex sites being posted on the internet, you will be able to create functional and eye candy websites without having to worry about server lag. We will begin by breaking Page 3
down the components of a LAMP and discuss how each is updated, what is the most current and stable editions on the market, and where we can get support for each of them. Section 1.1 1. L stands for Linux The letter L in LAMP stands for the Linux operating system. Linux as we all know is a freely distributable open source operating system that runs on a number of hardware platforms. Linux has become an extremely popular alternative to branded operating systems such as Windows. There are many distributions of the Linux kernel. Some branded names of Linux include Ubuntu, Debian, Fedora, or SUSE. By visiting their official web sites you will be able to view their most current and stable versions. Once you have chosen your server software of choice the distributors will have a help section in case you ever confused or if problems arise. 2. A is for Apache. Apache is a public domain open source web server. Developed in 1995 the very first version was based on the NCSA httpd web server. Since the Apache source code is free, anyone can adapt the server to meet specific needs. With this in mind there is a large public library of Apache add-ons available. The original version of Apache was programmed to run on UNIX systems, but now there are versions that run under not only Linux, but to OS/2 and Windows. The latest stable release of Apache is version 2.4.1 which was released back on the 21 st of February 2012 and it seems that every month or so a newer stable version is being released. You can also visit their website at http://httpd.apache.org/download.cgi. Here you are able to access their FAQ sections along with reading their up-to-date documentation about the latest release. You are also privy to other helpful sub menus in case you want to expand your knowledge cap of Apache. Page 4
3. M stand for MySQL not yours! MySQL is an open source database. MySQL relies on SQL for processing the data in the database. MySQL provides APIs for the languages C, C++, Eiffel, Java, Perl, PHP and Python. In addition to OLE DB and ODBC providers exist for MySQL data connections in the Microsoft environment. MySQL is mainly used for web applications and for embedded applications because of it speed and reliability. MySQL can run on UNIX, Windows, and Mac OS platforms. MySQL is developed, supported and marketed by MySQL AB. The database is available for free to those you do not wish to be strapped down by branded software. The latest version of MySQL for Debian Linux is 5.5.21 (be sure to select your operating system) which can be downloaded by visiting this site http://dev.mysql.com/downloads/mysql/. The MySQL versions are updated every couple of months or so in order to fix bugs or other related problems. You are also able to view the official documentation by selecting the Documentation tab in the top navigation. 4. P sounds like PHP to me? PHP (Hypertext Preprocessor), software for the server-side, and HTML scripting language used to create dynamic web pages. In an HTML document, the PHP script is enclosed within PHP tags. Since PHP is embedded within these tags, the creator can switch between HTML and PHP instead of having to rely greatly on HTML code output. Since PHP is ran on the server, those who view the site cannot view the creators PHP code. PHP can also perform any task that CGI programs can do, though its strength lies in the compatibility with many types of databases. PHP can also communicate between networks using the following IMAP, NNTP, POP3, HTTP, or SNMP. To download the latest stable release of PHP you can visit http://php.net/downloads.php and download version 5.4.0 which was launched on the 1 st of this month. It appears that close to the first or second of each month a new released is Page 5
launched, so it is good to update your server regularly to receive the full benefits of it all. You can also click on their documentation located on the top navigation to read about the latest release and what was changed. Section 2 How does a LAMP work? Since a LAMP server is fixated to web applications the design is very direct. The Linux forwards HTTP to Apache, which Apache in turn serves static content directly from the kernel of Linux. Dynamic pages are forwarded to the PHP by Apache, which the PHP code designs the web page(s). The database queries are directed to the MySQL through the PHP code. A simple diagram is shown as in figure 2. Figure 2 Section 3 Is the Stingray Traffic Manager better than LAMP? Stingray Traffic Manager is a proprietary software bundle created by Riverbed; which means that you have to pay a fee in order to obtain the rights to run the software. The Stingray Traffic Manager was created to run for UNIX and Unix-like platforms. Page 6
Stingray Traffic Manager was designed to be a high performance web server. The Stingray Traffic Manager supports content via CGI, FastCGI, Apache, JServe, ISAPI, NSAPI, mod_perl, SSI. While Stingray Traffic Manager competes mainly with other commercial web servers such as the Sun Java System Web Server, it also claims a high degree of compatibility with Apache HTTP servers, with the exception that Apache users will migrate to the Stingray Traffic Manager as their server load increases. According to the benefits you receive from Stingray are: Speed Reliability Improved Security Ease of Management To obtain an official license from Riverbed for the Stingray Traffic Manager you must contact them via their sales agent online or find a local sales partner that sells Riverbed services. You can visit the official website at http://www.riverbed.com/us/. Some of the advantages of deploying the Stingray Traffic Manager are the accelerated services with increased capacity. Along with the improved application availability to avoid failed or degraded servers to help your business or organization to continue to run smoothly. Page 7
Conclusion There is much to think about when you are planning to design and implement a web server. In the end if all depends on what you see is the best logical route you need to take for your company or organization. I quote the words of Jennifer Kyrnin who wrote a review about web hosting and what operating system you should choose. She said, I would recommend, when choosing a hosting server you find one that has the options you want, rather than worrying about what operating system they are running on the back end. This one simple sentence rings true, choose the options that best suit your needs for the company, once you have that aspect complete, you will be able to move forward with your business running smoothly. Page 8
Official Ubuntu Server Documentation https://help.ubuntu.com/10.04/serverguide/c/index.html Official Riverbed Stingray Documentation http://www.riverbed.com/us/products/stingray/stingray_tm.php Professional Recommendation Jennifer Kyrnin. (2012). Windows versus Linux for Web Page Hosting. Retrieved on March 16, 2012, from webdesign.about.com: http://webdesign.about.com/od/webhosting/a/windows_v_linux.htm Page 9
References PHP Documentation. (2012). PHP 5.4.0 (Current Stable). Retrieved on March 16, 2012, from php.net: http://php.net/downloads.php My SQL Documentation. (2012). My SQL Documentation: MySQL Reference Manuals. Retrieved on March 16, 2012, from mysql.com: http://dev.mysql.com/doc/ Apache Documentation. (February 2, 2012). Retrieved on March 16, 2012, from apache.org: http://httpd.apache.org/download.cgi Kvit. (2012). LAMP (Software Bundle). Retrieved on March 16, 2012, from linuxsolutions.org: http://www.linuxsolutions.org.in/lamp.html Wikipedia. (2012). LAMP (Software Bundle). Retrieved on March 16, 2012, from wikipedia.org: http://en.wikipedia.org/wiki/lamp_(software_bundle) Jack Wallen. (February 23, 2010). Easy LAMP Server Installation. Retrieved on March 16, 2012, from linux.com: https://www.linux.com/learn/tutorials/288158-easy-lamp-server-installation Page 10