NOTE TO READERS: This blog is only relevant for versions of XAMPP prior to 1.8.3. Since the release of XAMPP 1.8.3, Apache Friends has synced up all the capabilities for Linux, Mac OS and Windows versions and fixed the problems addressed in this blog. Now you just load with the installer script and everything works right out of the box.
In my last XAMPP article I described a step by step procedure for installing XAMPP on the Mac OS X. This time around I’ll walk you through the process of installing and configuring XAMPP 1.8.1 on Linux.
Linux Installation Procedure
The installation procedure here is based on CentOS 6.x workstation default installation. This distro and installation lack many of the libraries you need so it requires more work to get XAMPP running than on other distros like Ubuntu.
- The default installation of CentOS lacks some of the libraries that XAMPP needs to run, including 32 bit compatibility libraries. To get them you su to root then use this yum command
yum -y install glibc* libstd* ld-linux.so.2
- Download and install the latest verions from the XAMPP – 1.8.1 as of this writing – from the XAMPP download page.
- Unpack the tarball.
tar zxvf xampp-linux-1.8.1.tar.gz
- Move the xampp package to /opt
mv ./lampp /opt/
- XAMPP was designed to run on 32 bit operating systems. The start up script will prevent xampp from starting up if you are running on a 64 bit system which isn’t necessary since you installed 32 bit compatibility libraries in step 1. To get around this restriction, open /opt/lampp/lampp in an editor and comment out the following lines.
# XAMPP is currently 32 bit only #case `uname -m` in # *_64) # if /opt/lampp/bin/php -v > /dev/null 2>&1 # then # : # else # $de && echo "XAMPP gibt es zur Zeit nur als 32-Bit Applikation. # Bitte verwende eine 32-Bit Kompatibilitaetsbibliothek fuer Dein # System." # # $de || echo "XAMPP is currently only availably as 32 bit # application. Please use a 32 bit compatibility library for # your system." # # exit # fi # ;; #esac
- Open /opt/lampp/etc/etc/extra/httpd-xampp.conf in an editor.
- Replace the “Deny from all” statement with “Require all grant” in the <LocationMatch> stanza. You can also comment out the “Allow from…” line if you don’t want to accept connections from any external system.
<LocationMatch "^/(?i:(?:xampp|security|licenses|phpmyadmin|webalizer| server-status|server-info))"> Order deny, allow # Deny from all Require all granted # Allow from ::1 127.0.0.0/8 \ # fc00::/7 10.0.0.0/8 172.16.0.0/12 192.168.0.0/16 # fe80::/10 169.254.0.0/16 ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var </LocationMatch>
- Start up xampp
- Open http://localhost in a browser. You should a get a browser window with the XAMPP for Linux startup screen:
- At this point most of the setup work for XAMPP is done. However, if you plan to use phpyMyAdmin you’ll have to do a little further configuration to get it to work properly.
- XAMPP does not create all the tables that phpmyadmin needs so you have to do this with an SQL script that is enclosed with the package. To do this click on the Import tab in the toobar at the top of the screen.
- Click on the Choose button in the File to import section. The button in your version of phpMyAdmin might say Browse.
- Choose the create_tables.sql script in /opt/lampp/lampp/phpmyadmin/examples directory.
- Click on the Go button in the Format of imported file to run the script which will add all the tables you need to the phpmyadmin database.
- Open /opt/lampp/lampp/phpmyadmin/config.inc.php in your editor of choice.
- If you want the default language of phpMyAdmin to be English, add these two lines:
$cfg['DefaultLang'] = 'en-utf-8'; // Language if no other language is recognized $cfg['Lang'] = 'en-utf-8'; // Force this language for all users
- Change the authentication type as follows:
$cfg['Servers'][$i]['auth_type'] = 'cookie'
- Add the following lines in the config.inc.php file.
$cfg['Servers'][$i]['table_uiprefs'] = 'pma_table_uiprefs'; $cfg['Servers'][$i]['recent'] = 'pma_recent';
- To set a root password for phpmyadmin click on the Users tab in the XAMPP Control Panel toolbar.
- Click on the edit icon in the column to the right on the User Overview table for the root account on localhost.
- Click on the Password radio button in the Change password section of the Edit Privileges: User ‘root’@'localhost’ page.
- Enter the new password then re-type the password.
- Click on the Go button to save the new password.
- Repeat steps 21 – 24 for root account on linux.
- Close your browser then restart Apache and MySQL in the XAMPP Control Panel.
- Open phpMyAdmin in your browser. This time you’ll be take to a phpMyAdmin login screen.
- Login as root using password you set in step 21.
If everything went well you’ll go to the phpMyAdmin main screen and see a green Exit icon under the phpMyAdmin frame on the left side of the screen. You can now create other databases and tables with phpMyAdmin.
Author: Vic Hargrave