Hello Everyone, Today I am going to help you Install lamp on debian server. This article is a one stop for all of you who are looking to Install lamp on debian. First of all, Let me brief you on what is Debian? Debian is a open source operating system (OS) for your computer. It uses the Linux kernel. You can learn more about Debian by clicking here.
Let’s go ahead with step by step instructions to Install lamp on debian.
Step1. Before beginning the installation, make sure your distribution is up to date (the ‘#’ indicates that you should do this as root):
# aptitude update && aptitude upgrade
Step2. Installing MySQL
Install mysql using the following command:
# aptitude install mysql-server mysql-client
Once you have installed the MySQL server, you should change its root password:
- This step is not required for Lenny since you will be asked to input MySQL root user’s password during installation
# /usr/bin/mysqladmin -u root password 'enter-your-good-new-password-here'
Step3. Installing apache
To install web server apache, use this command:
# aptitude install apache2 apache2-doc
Configuring user directories for Apache Web Server
# a2enmod userdir
Configure Apache module userdir in /etc/apache2/mods-enabled/userdir.conf as follows:
UserDir disabled root
Options MultiViews Indexes SymLinksIfOwnerMatch
<Limit GET POST OPTIONS>
Allow from all
<LimitExcept GET POST OPTIONS>
Deny from all
Create directory as user (not as root):
Change group as root (substitute your username) and restart web server:
# chgrp www-data /home/<username>/public_html
# service apache2 restart
Check /home/username has permissions drwxr-xr-x. If the permissions are wrong correct them as such:
# chmod 755 /home/<username>
To be able to serve PHP, check that /etc/apache2/mods-available/php5.conf is correct:
Require all granted
Require all denied
# To re-enable php in user directories comment the following lines
# (from <IfModule ...> to </IfModule>.) Do NOT set it to On as it
# prevents .htaccess files from disabling it.
# <Directory /home/*/public_html>
# php_admin_value engine Off
Place some web content in ~/public_html and see the results at http://localhost/~username
Step4. The “P” part
Installing the PHP subset of LAMP in Debian is quite simple, you just type this as root in an console (the # is the root prompt symbol):
# aptitude install php5 php5-mysql libapache2-mod-php5
If you prefer Perl, then you might consider:
# aptitude install perl libapache2-mod-perl2
If you prefer Python, then you might consider:
# aptitude install python libapache2-mod-python
Apache2 configuration file: /etc/apache2/apache2.conf
You can edit this file when needed, but for most simple applications, this should not be necessary as most stuff is now done using conf.d.
To test the PHP interface, edit the file /var/www/html/test.php:
# nano /var/www/html/test.php
and insert the following code.
<?php phpinfo(); ?>
Afterwards, point your browser to http://<SERVERIP>/test.php to start using it.
Step5. Installing phpMyAdmin
Probably you also want to install phpMyAdmin for easy configuration:
# aptitude install phpmyadmin
To have access to phpMyAdmin on your website (i.e. http://example.com/phpmyadmin/ ) all you need to do is include the following line in /etc/apache2/apache2.conf (needed only before Squeeze, since 6.0 it will be linked by the package install script to /etc/apache2/conf.d/phpmyadmin.conf -> ../../phpmyadmin/apache.conf automatically):
# /etc/init.d/apache2 restart
Go to http://<SERVERIP>/phpmyadmin/ to start using it. (Use the IP or name of your PC/server instead of <SERVERIP> (The localhost IP is always 127.0.0.1).)
A usual issue with PHP configuration is to enable MySQL. Just edit the file and uncomment the following line.
Note that this should not be needed anymore as conf.d is now used.
MySQL : /etc/mysql/my.cnf
That’s it! You are now good to go. Following above steps precisely, you have successfully install lamp on debian. If this article helped you in any way, please share it with your colleagues and comment to leave your feedback. You can look for my other articles on How to Improve Linux Speed and How to Clean Linux System Increase Performance.
Keep checking other interesting stuff I regularly post on my blog.