Categories: PHPWeb

PHP – How to Install Apache 2.4 with PHP 5.6 on Windows



This article represents instructions on what’s needed to be done to install Apache 2.4 with PHP 5.6 on Windows (64-bit). Please feel free to comment/suggest if I missed to mention one or more important points. Also, sorry for the typos.

Following are the key steps/points described later in this article:

  • Install Apache 2.4
  • Install PHP 5.6
  • Configure Apache 2.4 for PHP
  • Configure PHP 5.6
  • Test

Install Apache 2.4

This step looks to be obvious. However, after I am done with the entire installation, it looked to be a bit tricky especially when you got 64-bit Windows. If you go to website, http://httpd.apache.org, you are taken to download page for win32 binaries. If you have 32-bit machine, well and good.

However, if you have 64-bit machine, and you downloaded the install-able from this page, you would end up installing 32-bit apache server which would create issues while configuring 64-bit PHP. What you need is 64-bit Apache 2.4.2 Http server. There are different pages on web from where you could get it. I downloaded it from Apache HTTP Server 2.4.2 x86 and x64 Windows Installers. Take the first one, apache_2.4.2-x64-openssl-1.0.1c.msi (Mirror 1) (Mirror 2).

Install PHP 5.6

For PHP 5.6 version, go to Windows Binaries page and you would see binaries, thread-safe or non-thread safe for both 32-bit and 64-bit WIN platform. As this article is about 64-bit, go ahead and download zip file user “VC11 x64 Thread Safe”.
Once downloaded, unzip it and place it in appropriate folder within C:\ or D:\ directory.

Configure Apache 2.4 for PHP

So far so good. It’s time to configure Apache Http Server. Even before you configure, open a command prompt, go to <Apache Root>/bin and start the server by executing httpd command. If it starts without issue, access http://localhost:8080 and it should display a page saying “It works!”. Add the following command at the end of httpd.conf file which could be found within <Apache Root>/conf folder. Following command assumes that PHP is installed within D:/php

LoadModule php5_module "D:/php/php5apache2_4.dll"
AddHandler application/x-httpd-php .php
# configure the path to php.ini
PHPIniDir "D:/php"

In addition to above, go ahead and add index.php to DirectoryIndex variable in following manner:

<IfModule dir_module>
    DirectoryIndex  index.php index.html
</IfModule>

 

Configure PHP 5.6

You are just one step away. Go to <Apache Root> folder and save php.ini-development as php.ini file. Uncomment extension_dir = “ext”. Go ahead and uncomment one or more extensions that you would like to be loaded. For example, extension = php_mysql.dll, extension = php_mysqli.dll etc.

 

Test the Installation

You are all set!!! Go to <Apache Root>/htdocs folder and create an index.php file. Write following code in that file. Open a browser and access http://localhost:8080. You should be able to see Hello World!!! printed with bold letters.

<?php 
echo "Hello World!!!";
?>
Nidhi Rai

Nidhi has been been actively blogging in different technologies such as AI / machine learning and internet technologies. Her field of interest includes AI / ML, Java, mobile technologies, UI programming such as HTML, CSS, Javascript (Angular/ReactJS etc), open-source and other related technologies.

View Comments

Share
Published by
Nidhi Rai
Tags: PHP

Recent Posts

Logistic Regression in Machine Learning: Python Example

Last updated: 26th April, 2024 In this blog post, we will discuss the logistic regression…

12 hours ago

MSE vs RMSE vs MAE vs MAPE vs R-Squared: When to Use?

Last updated: 22nd April, 2024 As data scientists, we navigate a sea of metrics to…

2 days ago

Gradient Descent in Machine Learning: Python Examples

Last updated: 22nd April, 2024 This post will teach you about the gradient descent algorithm…

5 days ago

Loss Function vs Cost Function vs Objective Function: Examples

Last updated: 19th April, 2024 Among the terminologies used in training machine learning models, the…

1 week ago

Model Parallelism vs Data Parallelism: Examples

Last updated: 19th April, 2024 Model parallelism and data parallelism are two strategies used to…

1 week ago

Model Complexity & Overfitting in Machine Learning: How to Reduce

Last updated: 4th April, 2024 In machine learning, model complexity, and overfitting are related in…

2 weeks ago