I have been using Java for years. Now, there is an open source PHP project (using CodeIgniter) I need to study and modify. Although I have studied and tried the basics of PHP and CodeIgniter before graduating in college, I already forgot most of it by now. This means I need to study and review the basics and learn some advanced topics, especially those I would need. To start with this, I need to install Apache and PHP. Here are the steps I did to install Apache, PHP and MySQL. I also enumerated the steps I did to map folders outside the /var/www directory.
Installing Apache, PHP and MySQL in Ubuntu
- Install Apache
- Install PHP
- Restart Apache
- Test the installation of PHP and Apache
- Installing MySQL
- Installing php5-mysql
- Restart Apache
Open the terminal and execute the command sudo apt-get install apache2. After that, apache will now be installed automatically.
Open the terminal and execute the command sudo apt-get install php5 libapache2-mod-php5(This installs PHP5).
Execute the command sudo /etc/init.d/apache2 restart
Go to the /var/www directory (This is the directory where you should put your PHP files). Create a file, like test.php and add php echo 'Hello World!'; ?> in it. Then open the URL http://localhost/test.php in your web browser. You should see the text "Hello World!". If not, maybe something was wrong in the installation.
Execute the command sudo apt-get install mysql-server
Execute the command sudo apt-get install php5-mysql
After installing mysql-server and/or php5-mysql, restart the apache server again. Apache, PHP and MySQL are now installed.
Mapping folders outside of the /var/www directory
Instead of using the /var/www for your PHP files and projects, you can use other folders other by mapping the directory in an alias in the configuration file. Open /etc/apache2/conf.d/aliasin your text editor (e.g. sudo gedit /etc/apache2/conf.d/alias). Add the aliases using the syntax "Alias /URL-path /location_of_folder/" where "/location_of_folder/" is the directory of the PHP file/project and "/URL-path/" will be its localhost alias. This example would map /location_of_folder/ to http://localhost/URL-path. Restart Apache after inputting the aliases.