To develop a simple website with static elements, a special setup is required: you must be able to access your HTML document at any time with a common browser in order to check the current status of your online project or in­di­vidu­al pro­gram­ming steps. However, if you intend to also implement dynamic content that is generated server-side, a web server is in­dis­pens­able on the computer used for the de­vel­op­ment of the site in order to display everything correctly. With software stacks like MAMP, the in­stall­a­tion process is child’s play, as they contain the latest version of the scripting languages and databases needed for server-side ap­plic­a­tions.

What is MAMP?

MAMP is the name given to a par­tic­u­lar col­lec­tion of software used to manage a local web server. The name of the package itself is an acronym made up of the initials of the various com­pon­ents used:

  • Mac OS X as the operating system
  • Apache 2 as web server software (al­tern­at­ively also NGINX)
  • MySQL as the database man­age­ment system
  • PHP as the script language (al­tern­at­ively also Perl or Python)

With MAMP, Mac users have access to a software stack that is quick to install and easy to use. The software often serves as a re­place­ment for Apache and PHP versions that are often outdated in Mac OS X systems and auto­mat­ic­ally installs MySQL, which normally has to be carried out manually on Apple operating systems. The col­lec­tion also contains a PHP ac­cel­er­at­or such as XCache or eAc­cel­er­at­or; these cache compiled PHP codes are stored in the internal memory, thus sig­ni­fic­antly ac­cel­er­at­ing the execution of scripts. MAMP also includes another program of the same name for in­stalling and operating the com­pon­ents. This allows users to define ports and start or stop database servers and web server with just one click. As well as the free version of MAMP, there’s also MAMP PRO, a com­mer­cial edition of the stack, which is an extended version of the MAMP ap­plic­a­tion with diverse ex­ten­sions. With the PRO version, you can install common web ap­plic­a­tions such as WordPress, Joomla, or Drupal and use different PHP versions in parallel. Ori­gin­ally designed ex­clus­ively for Mac OS X, MAMP finally became available for Windows in late 2015.

How to install the software stack

Before in­stalling MAMP, you must ensure that your system fulfills its re­quire­ments. Apple users require a Mac with 64 bit CPU (x64) or higher from Intel and OS X version 10.6.8 or newer, as well as at least 2 GB of free hard drive storage. It’s also necessary for users to have the ad­min­is­trat­ive rights. To use the program on a Windows operating system, (of­fi­cially, 7, 8.1, and 10 are supported, while un­of­fi­cially all versions from Windows XP and Windows Server 2003 onwards are supported) users must have .NET Framework installed 4.0 and have 1GB RAM memory available. Both in­stall­a­tion packages can be down­loaded from the official MAMP homepage. Just choose the correct package for your operating system and click the download button. Double click the down­loaded file to open it; this will sub­sequently run the in­stall­a­tion program and start the in­stall­a­tion process. The MAMP PRO folder (op­tion­ally available in Windows) is installed in addition to the MAMP folder; this also includes a 14-day trial version of the paid edition. Even if you decide not to use this, you shouldn’t delete it, as this file will be required in the event of a sub­sequent un­in­stall­a­tion.

The first steps with the MAMP ap­plic­a­tion

Once the in­stall­a­tion has been completed, you will find the ex­ecut­able file for the MAMP program, which can you can start by double clicking. The menu will be present you with the following options:

  • Test MAMP PRO: this button is used if you wish to test the web stack’s PRO edition.

  • Open start page: this button allows you to open the start page, which can be defined under the settings option, ‘Start page URL’.

  • Stop servers: this button allows you to start or stop the MAMP server, i.e. the Apache web server as well as the MySQL database server. You can also specify in the settings that servers start or stop auto­mat­ic­ally when you open or quit the MAMP ap­plic­a­tion.

  • Settings: in the settings, you can define which ports the server ap­plic­a­tions are assigned to. Apache Port 8888 and MySQL Port 8889 are set as the default ports, but you can normally choose the most suitable option freely. With the option ‘Set web & MySQL ports to 80 & 3306’, you can set your ports to the customary values on the Internet. If you are planning a project that can be accessed ex­tern­ally via the internet, you also need to open the con­figured ports in the firewall. Go to the ‘PHP’ tab and determine which PHP version is used and whether you want to use a cache. Under the web server option, select your server software and the directory con­tain­ing your web pages. By default, after the in­stall­a­tion this should be /MAMP/htdocs or with Windows software, \MAMP\htdocs.

The most important questions about MAMP

MAMP is perfect for running your own local web server and makes getting started much easier for in­ex­per­i­enced users. Another great benefit of using this package is that you don’t even need to worry about in­stalling in­di­vidu­al com­pon­ents; simply updating MAMP, PHP, and MySQL will keep your system up to date. Thanks to the ap­plic­a­tion, you can start and stop database servers and web servers precisely with a single click. We will summarise by answering some of the most important questions about the web stack and its features.

Is there a list of the included com­pon­ents and the different versions?

MAMP’s version history, contains a detailed list of all the programs, tools, and modules included, and an in­dic­a­tion of their version, for all published versions of MAMP – both for Mac OS X as well as Windows. You can find out ad­di­tion­al in­form­a­tion here as well, such as if a MAMP version contains new functions, or if errors have been fixed.

Where can I find doc­u­ment­a­tion on the included programs?

If you’re looking for in­form­a­tion on the im­ple­men­ted programs, you’ll generally find it on the man­u­fac­turer’s website or the product page:

Are there any special features to consider when in­stalling MAMP?

In order to install MAMP, the above-mentioned system re­quire­ments need to be fulfilled, and secondly, root access (Mac) must be possible. On Mac OS X systems, it’s also necessary to put the MAMP folder directly in the ap­plic­a­tions directory so that Apache and the MySQL server can be started. With Windows systems, MAMP is installed in the C:\ file by default. Keep this as the in­stall­a­tion location, as in­stalling the package in the program folder could lead to certain MAMP functions not working properly.

Can MAMP and MAMP PRO be used at the same time?

As you can install the trial version of MAMP PRO along with the regular MAMP package, it’s possible to use both packages sim­ul­tan­eously from the very beginning. Both web de­vel­op­ment en­vir­on­ments run in­de­pend­ently of each other. Should you wish to deinstall MAMP PRO, this will not affect the func­tion­al­ity of the standard package. However, some minor errors may occur, as MAMP has some con­fig­ur­a­tion options unknown to MAMP PRO. In this case, you can inform the developer team via the in­teg­rated bug tracker.

Where are modules, logs, and con­fig­ur­a­tion files stored by default?

Mac OS X Windows
Log file /Ap­plic­a­tions/MAMP/logs C:\MAMP\logs\
MySQL file /Ap­plic­a­tions/MAMP/db/mysql C:\MAMP\db\mysql
PHP con­fig­ur­a­tion file /Ap­plic­a­tions/MAMP/conf/phpX.XX C:\MAMP\conf\phpX.XX
Apache con­fig­ur­a­tion file /Ap­plic­a­tions/MAMP/conf/apache C:\MAMP\conf\apache\httpd.conf
Apache module /Ap­plic­a­tions/MAMP/Library/Modules C:\MAMP\bin\apache\modules
Go to Main Menu