FAQ'S XAMPP(Linux)

FAQ'S XAMPP(Linux)


Author: Kai 'Oswald' Seidler
Version: Wed Aug 12 13:37:27 2009

How to upgrade XAMPP?

If an upgrade exists, you should use it: a) it's much smaller than the full XAMPP package and b) your configuration and HTML files won't be overwritten.

Step 1: Download

Okay, the first step is very obvious. Please download the upgrade packages from the XAMPP section of our website. Please take note that only matching upgrade packages can upgrade your XAMPP version.If you donwloaded a wrong version you will get an error message if you try to upgrade.

Step 2: Extracting the archive

Now extract the downloaded package:
tar xvfz xampp-linux-upgrade-x.x.x-y.y.y.tar.gz
By the way: It doesn't matter where in the filesystem you extract the packet. Just make sure it's on the same machine as your XAMPP installation.

Step 3: Start upgrade

After unpacking the archive you can start the upgrade process. First, get root access to your system, for example by using the 'su' command:
su
And now start the upgrade process:
xampp-upgrade/start
Now you should see something like this on your screen:
Stopping XAMPP for Linux 0.9.6...
XAMPP: Stopping Apache...
XAMPP: Stopping MySQL...
XAMPP for Linux stopped.

Upgrading 0.9.6 to 0.9.7...
Installing new files...
Upgrading existing files...
patching file lampp/etc/httpd.conf

Successfully upgraded XAMPP.
XAMPP: Starting Apache...
XAMPP: Starting MySQL...
XAMPP started.






Ready. You successfuly upgraded XAMPP.
By the way: the upgrade will stop a running XAMPP and will start XAMPP as soon as the upgrade is finished. XAMPP will be started after an upgrade even if it was not running before.

Step 4: Testing

Now use your favourite web browser and test the new XAMPP version by accessing your web site. For example simply type http://localhost in the location bar of your browser window. After upgrading you can delete the lampp-upgrade directory; it isn't needed any more.

An error occurred during the upgrade! What now?

Under special circumstances you can get the following warning message:
The file /opt/lampp/XXX couldn't be upgraded.
The new version of the file could be found under: /opt/lampp/XXX-0.9.7

The upgrade program carefully tried to upgrade one of your configuration files. In order to upgrade the file, the program had to edit some lines you had already changed. Seeing as nobody wants to lose valuable configuration information, the upgrade program decided not to change the file but save a copy of the new file in addition to the original one.

What's the meaning of the messages while starting XAMPP?

You may get three error messages while starting XAMPP:LAMPP-Apache is already running.
An Apache daemon is already running.
The LAMPP startup script did not start XAMPP-Apache because there is an Apache instance already running. To start XAMPP properly, first you have to stop this daemon.
LAMPP-MySQL is already running.
A MySQL daemon is already running.
Mostly due to the same reasons as the above error. The LAMPP startup script found a MySQL daemon already running on your system. To start LAMPP properly, you have to stop this daemon first.

I got the error "/lib/libc.so.6: version `GLIBC_2.2' not found". What now?

/opt/lampp/bin/XXX: /lib/libc.so.6: version `GLIBC_2.2' not found (required by XXX)
Your Linux system is too old. XAMPP needs a newer Linux distribution that uses the glibc 2.1 version.

What's the secret about "Error 1"?

Good question :) This error can exist for multiple reasons. Apache spits out this error under several circumstances. To find the exact reason we have to do some research:
tail -2 /opt/lampp/logs/error_log
If you now see "Invalid argument: Could not set permissions on ssl_mutex" or "Invalid argument: Unable to create scoreboard" please take a look at answers below. If you see another error message please email it to me. Maybe we can solve the problem together. My email address is oswald@apachefriends.org.

Apache doesn't seems to start. What can I do?

See "Error 1" above.

What do I do if the error message is "Invalid argument: Could not set permissions on ssl_mutex"?

The whole error message is:
[error] (22)Invalid argument: Could not set permissions on ssl_mutex; check User and Group directives

In this case you have to change the Group directive (about line 318) in /opt/lampp/etc/httpd.conf.
You should find there something like:
Group ...

Change the "..." to "nobody", "nogroup" or #-1. One of these three possibilities should work.

What do I do if the error message is "Invalid argument: Unable to create scoreboard"?

The whole error message is:
[crit] (22)Invalid argument: Unable to create scoreboard (anonymous shared memory failure)

In this case you have to remove the hash (#) in front of the Scoreboard directive (about line 71) in /opt/lampp/etc/httpd.conf.
There, you should find something like:
#ScoreBoardFile logs/apache_runtime_status

Simply remove the hash at the beginning of this line:
ScoreBoardFile logs/apache_runtime_status

Now this error message should not bother you anymore.

What do I do if the error message is »Invalid argument: Configuration failed«?

In this case, Apache is unable to get the IP address for your host name. It should normally work but sometimes (mostly if you're using DHCP) this situation could happen.
Solution:
Simply call the following command (Please use copy&paste. The ` characters are mandatory):
echo 127.0.0.1 `hostname` >> /etc/hosts
This will fix the configuation error of your system and the »Configuration failed« error should dissapear.

What do I do if the error message is »The configuration file now needs a secret passphrase (blowfish_secret)« shows up?

This message may appear since XAMPP for Linux 1.2 was released. Since version 2.5.2, phpMyAdmin supports the encryption of cookie-saved passwords.
Solution:
Edit config.inc.php at line 60. You find this file in the phpmyadmin directory of your XAMPP installation. The line should look like this:
$cfg['blowfish_secret'] = '';

Enter in this line a password-like word or phrase, for example:
$cfg['blowfish_secret'] = 'holla';

That's all. You should now be able to use phpMyAdmin in the same way as before.

What do I do if the error message is »cannot restore segment prot after reloc: Permission denied«?

I assume you are using Fedora? Since version 4 - I think - SELinux is activated by default and this is preventing the succesful start of XAMPP.Solution:
At the moment I only know one solution - deactivating SELinux:
setenforce 0

Now XAMPP works fine again. If you know a better solution, please email me. I'm no SELinux expert and the only I know about SELinux is how to disable it. ;)

After I rebooted my Linux box XAMPP stopped running! How can I fix this?

Correct. That's normal Linux behaviour (which applies to any other Unix-like system. It's the admin's job to make sure a particular application is started at bootup.There is no real standard way to configure the boot process of a Linux system, but most of them should allow you to start XAMPP at boot time using the following steps.

  1. First, find out your default runlevel.
    Simply type egrep :initdefault: /etc/inittab.
    You should now see a line containing a number between two colons.
    In most cases 3 or 5 (2 if you're using Debian).
  2. Go into the directory which configures this runlevel. If for example your runlevel is 3, then you have to change into the /etc/rc.d/rc3.d directory: cd /etc/rc.d/rc3.d
    If your system didn't provide /etc/rc.d/rc3.d please try also /etc/init.d/rc3.d and /etc/rc3.d.
  3. Now carry out the actual configuration by typing:ln -s /opt/lampp/lampp S99lampp
    ln -s /opt/lampp/lampp K01lampp


Now XAMPP should start and stop automatically if you boot or shutdown your machine.
OpenSuSE 10.0 is a little bit stange: You need to set up a symbolic link from /etc/init.d/lampp to /opt/lampp/lampp:
ln -s /opt/lampp/lampp /etc/init.d/lampp
And than use the runlevel editor (expert mode) from YaST to activate XAMPP for the specific runlevels.

How can I make my XAMPP installation more secure?

In the default installation, XAMPP has no passwords set and it is not recommended to run XAMPP with this configuration accessible by others (e. g. on the Internet).Simply type the following command (as root) to start a simple security check:
/opt/lampp/lampp security
Now you should see the following dialog on your screen (user input is highlighted):
XAMPP: Quick security check...
XAMPP: Your XAMPP pages are NOT secured by a password.
XAMPP: Do you want to set a password? [yes] yes (1)
XAMPP: Password: ******
XAMPP: Password (again): ******
XAMPP: Password protection active. Please use 'lampp' as user name!
XAMPP: MySQL is accessable via network.
XAMPP: Normaly that's not recommended. Do you want me to turn it off? [yes] yes
XAMPP: Turned off.
XAMPP: Stopping MySQL...
XAMPP: Starting MySQL...
XAMPP: The MySQL/phpMyAdmin user pma has no password set!!!
XAMPP: Do you want to set a password? [yes] yes
XAMPP: Password: ******
XAMPP: Password (again): ******
XAMPP: Setting new MySQL pma password.
XAMPP: Setting phpMyAdmin's pma password to the new one.
XAMPP: MySQL has no root passwort set!!!
XAMPP: Do you want to set a password? [yes] yes
XAMPP: Write the passworde somewhere down to make sure you won't forget it!!!
XAMPP: Password: ******
XAMPP: Password (again): ******
XAMPP: Setting new MySQL root password.
XAMPP: Setting phpMyAdmin's root password to the new one.
XAMPP: The FTP password for user 'nobody' is still set to 'lampp'.
XAMPP: Do you want to change the password? [yes] yes
XAMPP: Password: ******
XAMPP: Password (again): ******
XAMPP: Reload ProFTPD...
XAMPP: Done.

(1)Setting a password will protect the XAMPP demo pages (http://localhost/xampp/) using this password. The user name is 'lampp'!
After calling this command your XAMPP installation should be "secure". For my part I've no idea what else could be insecure.

How do I activate eAccelerator?

(since XAMPP for Linux 1.4.12)To activate eAccelerator simply find the following lines in your /opt/lampp/etc/php.ini:
;extension="eaccelerator.so"
;eaccelerator.shm_size="16"
;eaccelerator.cache_dir="/opt/lampp/tmp/eaccelerator"
;eaccelerator.enable="1"
;eaccelerator.optimizer="1"
;eaccelerator.check_mtime="1"
;eaccelerator.debug="0"
;eaccelerator.filter=""
;eaccelerator.shm_max="0"
;eaccelerator.shm_ttl="0"
;eaccelerator.shm_prune_period="0"
;eaccelerator.shm_only="0"
;eaccelerator.compress="1"
;eaccelerator.compress_level="9"

Remove the semicolon at the beginning of each line and restart XAMPP. eAccelerator is now active. For more information about eAccelerator, check the eAccelerator home page: http://eaccelerator.net.

How do I activate the OCI8/Oracle extension for PHP?

(since XAMPP for Linux 1.3)To activate the OCI8/Oracle extension for PHP please execute the following command:
/opt/lampp/lampp oci8
The following dialog will start:
Please enter the path to your Oracle installation:
ORA_HOME [/opt/oracle/OraHome1]
installing symlinks...
patching php.ini...
OCI8 add-on activation likely successful.
LAMPP: Stopping Apache with SSL...
LAMPP: Starting Apache with SSL...

Now the extension should be active. I have only had a few chances to test this feature, so please report if this worked for you or not: oswald@apachefriends.org.
XAMPP currently only supports Oracle 10 out of the box. If you're using Oracle 11 you may need to put your own hands on. Also XAMPP is a 32 bit only application which only works with a 32 bit Oracle client library.
Both limitations only affect the Oracle client library XAMPP is linking to. On the server's side you may use any Oracle version you like.

XAMPP runs, but none of the images are shown?

That's a special problem with some Linux systems. Please open your /opt/lampp/etc/httpd.conf and look for these two lines:
#EnableMMAP off
#EnableSendfile off
Remove the # in both lines and restart your Apache. Now you got all your images back.

How do I backup/restore my XAMPP system?

Since XAMPP for Linux 1.4.2 you can make easily backups of your XAMPP data.


Warning: The backup and restore functionality is still under development and may not work correctly.
Attention: There is a small but annoying bug in version 1.4.2 of XAMPP. Please take a look here!

Step 1: Creating the backup

Create the backup by calling:
/opt/lampp/lampp backup
or
/opt/lampp/lampp backup secret
Where secret is your MySQL root password.
This command will create the following output:
# /opt/lampp/lampp backup
Backing up databases...
Backing up configuration, log and htdocs files...
Calculating checksums...
Building final backup file...
Backup finished.
Take care of /opt/lampp/backup/xampp-backup-22-01-04.sh
#


Step 2: Take care of your backuped data

The file /opt/lampp/backup/xampp-backup-22-01-04.sh (in the example above) contains your backuped data. Get this file to a save place.

Step 3: Restore your backuped data

On the new machine you need the same version of XAMPP as on your original/source machine.Call (as root):
sh xampp-backup-22-01-04.sh
You shoud see something like this:
# sh xampp-backup-22-01-04.sh
Checking integrity of files...
Restoring configuration, log and htdocs files...
Checking versions...
Installed: XAMPP 1.4.2
Backup from: XAMPP 1.4.2
Restoring MySQL databases...
Restoring MySQL user databases...
Backup complete. Have fun!
You may need to restart XAMPP to complete the restore.
#

That's all. As you can read you may need to restart XAMPP.
It should work perfectly (I tested it many times) but remember it's a beta feature. 

Author: Kai 'Oswald' Seidler
Last modification: Wed Aug 12 13:37:27 2009
© 2002-2012 Apache Friends, Imprint
-->
Linux version of XAMPP

Linux version of XAMPP


Apache Friends XAMPP 2012 Survey
Last May XAMPP became 10 years old and we think this is a good time to think again about changes and improvements to XAMPP. That's what this survey is for: to find out what your needs are and what we can do to improve XAMPP in future releases.
Please help us, share this and take the survey!

Welcome to the Linux version of XAMPP (on x86-compatible processors)

By the way: In the past this software was called LAMPP but to avoid misconceptions we renamed it to »XAMPP for Linux«. So if you are seeking for LAMPP you're on the right track. ;)
If you encounter any problems with XAMPP please feel free to get in touch with us. This will help us to improve XAMPP and make it more useful for everybody

Pictures of XAMPP for Linux 

As the old saying goes, a picture is worth a thousand words. Here you can take a look at some screen shots of a XAMPP installation.

Step 1: Download

Simply click on one of the links below. It's a good idea to get the latest version. :)

A complete list of downloads (older versions) is available at  SourceForge.

A detailed overview over the changes and contents of all XAMPP releases is available in the RELEASE NOTES.

Step 2: Installation
After downloading simply type in the following commands:

Go to a Linux shell and login as the system administrator root:su
Extract the downloaded archive file to /opt:tar xvfz xampp-linux-1.8.0.tar.gz -C /opt
Warning: Please use only this command to install XAMPP. DON'T use any Microsoft Windows tools to extract the archive, it won't work.
Warning 2: already installed XAMPP versions get overwritten by this command.
That's all. XAMPP is now installed below the /opt/lampp directory.

Step 3: Start

To start XAMPP simply call this command:/opt/lampp/lampp start
You should now see something like this on your screen:
Starting XAMPP 1.8.0...
LAMPP: Starting Apache...
LAMPP: Starting MySQL...
LAMPP started.
Ready. Apache and MySQL are running.
If you get any error messages please take a look at the Linux FAQ.
Step 4: Test

OK, that was easy but how can you check that everything really works? Just type in the following URL at your favourite web browser: http://localhost
Now you should see the start page of XAMPP containing some links to check the status of the installed software and some small programming examples.

The Instant Art example: A small PHP/GD program (since 0.9.6pre1 also a flashy PHP/Ming example, see screenshot). Thanks to Anke Arnold for her font »AnkeCalligraph
A matter of security (A MUST READ!)

As mentioned before, XAMPP is not meant for production use but only for developers in a development environment. The way XAMPP is configured is to be open as possible and allowing the developer anything he/she wants. For development environments this is great but in a production environment it could be fatal. Here a list of missing security in XAMPP:

1.     The MySQL administrator (root) has no password.
2.     The MySQL daemon is accessible via network.
3.     ProFTPD uses the password "lampp" for user "nobody".
4.     PhpMyAdmin is accessible via network.
5.     Examples are accessible via network.
6.     MySQL and Apache running under the same user (nobody).

To fix most of the security weaknesses simply call the following command:
/opt/lampp/lampp security
It starts a small security check and makes your XAMPP installation quite secure. For example this protects the XAMPP demo pages by a username ('lampp') and password combination. See also our XAMPP for Linux FAQ.

Advanced start and stop parameters

Until version 0.9.4 /opt/lampp/lampp could only start and stop XAMPP. Since version 0.9.5 it learned a lot of new things to do.
START AND STOP PARAMETERS
ParameterDescription
startStarts XAMPP.
stopStops XAMPP.
restartStops and starts XAMPP.
startapacheStarts only the Apache.
startsslStarts the Apache SSL support. This command activates the SSL support permanently, e.g. if you restarts XAMPP in the future SSL will stay activated.
startmysqlStarts only the MySQL database.
startftpStarts the ProFTPD server. Via FTP you can upload files for your web server (user "nobody", password "lampp"). This command activates the ProFTPD permanently, e.g. if you restarts XAMPP in the future FTP will stay activated.
stopapacheStops the Apache.
stopsslStops the Apache SSL support. This command deactivates the SSL support permanently, e.g. if you restarts XAMPP in the future SSL will stay deactivated.
stopmysqlStops the MySQL database.
stopftpStops the ProFTPD server. This command deactivates the ProFTPD permanently, e.g. if you restarts XAMPP in the future FTP will stay deactivated.
securityStarts a small security check programm.

What is where?

What is where? A big question of our existens, here are some answers! ;)

For example: To start Apache with SSL support simply type in the following command (as root):
/opt/lampp/lampp startssl
You can also access your Apache server via SSL under https://localhost.


IMPORTANT FILES AND DIRECTORIES
File/DirectoryPurpose
/opt/lampp/bin/The XAMPP commands home. /opt/lampp/bin/mysql calls for example the MySQL monitor.
/opt/lampp/htdocs/The Apache DocumentRoot directory.
/opt/lampp/etc/httpd.confThe Apache configuration file.
/opt/lampp/etc/my.cnfThe MySQL configuration file.
/opt/lampp/etc/php.iniThe PHP configuration file.
/opt/lampp/etc/proftpd.confThe ProFTPD configuration file. (since 0.9.5)
/opt/lampp/phpmyadmin/config.inc.phpThe phpMyAdmin configuration file.



Stopping XAMPP

To stop XAMPP simply call this command:
/opt/lampp/lampp stop
You should now see:
Stopping LAMPP 1.8.0...
LAMPP: Stopping Apache...
LAMPP: Stopping MySQL...
LAMPP stopped.
And XAMPP for Linux is stopped.

Uninstall

To uninstall XAMPP just type in this command:rm -rf /opt/lampp
The end.

Author: Kai 'Oswald' Seidler
Last modification: Sun Aug 26 22:26:41 2012
© 2002-2012 Apache Friends, Imprint
 
FAQ'S For XAMPP(Windows-Vista)

FAQ'S For XAMPP(Windows-Vista)


For frequently ask questions, you can find the answers here.

 XAMPP does not work with Windows XP SP2!

Sure! But Microsoft deliver a better firewall with service pack 2 (SP2), which starts automatically. This firewall now blocks the necessary ports 80 (http) and 443 (https) and Apache can't start.

The fast solution:

Disable the Microsoft firewall with the toolbar and try to start XAMPP onces more. The better solution is, to define an exception within the security center.

The following ports are used for basic functionality:

Apache (HTTP):
Port 80
Apache (WebDAV):
Port 81
Apache (HTTPS):
Port 443
MySQL:
Port 3306
FileZilla (FTP):
Port 21
FileZilla (Admin):
Port 14147
Mercury (SMTP):
Port 25
Mercury (POP3):
Port 110
Mercury (IMAP):
Port 143
Mercury (HTTP):
Port 2224
Mercury (Finger):
Port 79
Mercury (PH):
Port 105
Mercury (PopPass):
Port 106
Tomcat (AJP/1.3):
Port 8009
Tomcat (HTTP):
Port 8080

Vista problems!

As of Microsoft Windows Vista there is a new problems:

1) User Account Control (UAC)

  1. Missing write privileges:
    In the directory "C:\program files" you don't have full write privileges, even as Admin. Or you have only limited privileges (e.g. for ".\xampp\htdocs"). In this case you can't edit a file.
    Solution:Raise your privileges with in explorer (right click / security) or disable the user account control (UAC).
  2. You can't start services with the Control Panel:
    You have installed Apache/MySQL in "C:\xampp" as Windows service. But you can't start/stop the services with the "XAMPP Control Panel" or can't uninstall them.
    Solution: Use the service management console from Windows or disable UAC.
Disabling the User Account Control (UAC)
To disable the UAC, use the program "msconfig". In "msconfig" go to "Tools", select "disable user account control" and verify your selection. Now you must restart Windows. At the same place, you can enable the UAC again.

Where I change the start page?

The DocumentRoot folder is "\xampp\htdocs". There is the index site (index.php) the real start page which is loaded after executing of "http://localhost/". Alternatively, this page can also be deleted and replaced by your own "index.php" or "index.html".
After changing the index page in DocumentRoot, you will still find the XAMPP demopage with the URI http://localhost/xampp/.

However, I need mod_perl, the Tomcat or ...!

That's the reason for the XAMPP Add-Ons. These additional packages works only with the XAMPP main package, but normally not with XAMPP Lite. At the moment there are the following Add-Ons:
  1. Perl with mod_perl (since XAMPP 1.7.2 part of the main package)
  2. Tomcat with mod_jk 2 and Java JRE.
You find all current Add-Ons for win32 on the XAMPP for Windows homepage. Besides that, there are even further Add-Ons for XAMPP at:
 http://sourceforge.net/projects/xamppaddon/

How do I check the md5 checksum?

To compare files, often checksums are used. A standard to create this checksum MD5 (Message Digest Algorithm 5).
With this md5 checksum you can test, if your download of the XAMPP package is correct or not. Of course you need a program which can create these checksums. For Windows you can use a tool from Microsoft:
 Availability and description of the File Checksum Integrity Verifier utility
It's also possible to use any other program which can create md5 checksums, like the GNU md5sum.
As you have installed such a program (e.g. fciv.exe), you can do following steps:
  1. download XAMPP (e.g. "xampp-win32-1.7.2.exe")
  2. create the checksum with:
    fciv.exe xampp-win32-1.7.2.exe
  3. Now you get this result:
    14c2e3e35f9792b9aec674548472348b xampp-win32-1.7.2.exe
  4. And now you can compare this checksum with that one you can find on the XAMPP for Windows homepage.
Are both checksums equal, all is ok. If not, the download is broken or the file is changed from someone.

Why have changes in my php.ini no effect?

Since XAMPP 1.7.1 the "php.ini" is only in the directory "\xampp\php". Till XAMPP 1.7.0 is was in the directory "\xampp\apache\bin".
If a change in the "php.ini" have no effect, it's possible PHP is still using an other one. You can verify this with phpinfo(). Go to the URI http://localhost/xampp/phpinfo.php and search for "Loaded Configuration File". This value shows you the "php.ini" PHP is really using.
Info:
After changing the "php.ini" you have to restart Apache, thus Apache/PHP can read the new settings.

Help! There is a virus in XAMPP!

Unfortunately, there are always virus scanner, which wrongly recognize a file as a virus or unwanted program. If a recognized program is blocked or deleted from a scanner, you have most times problems to stop XAMPP. Or you can't start it, especially if the downloaded archive is blocked.
In early XAMPPs, the programs "kill.exe" or "pv.exe" are often recognized. At the moment it's sometimes "xampp-control.exe".
To be sure, we are always testing the package with a virus scanner, and then we are uploading it to the server. At the moment we are using Kaspersky Online Virus Scanner.

Not enough memory in the system environment

This kind of error message occurs only under home systems like Windows 95/98/ME . Windows reserves for the "command.com" environment up to 160 KB. But some servers need more.
Solution:
In the file "c:\config.sys" add the following line:
shell=c:\windows\command.com c:\windows /e:2048 /p
Now restart your system and test XAMPP again. With this setting "command.com" can use up to 2048 KB memory for the environment. This should be enough!

The apache does not start on my system!!!

This problem can be several reasons:
  1. You have started more then one HTTP Server (IIS, Sambar, ZEUS and so on). Only one Server can use port 80. This error message indicate the problem:
    "(OS 10048)... make_sock: could not bind to adress 0.0.0.0:80
    no listening sockets available, shutting down"
  2. You have other software, such as the Internet Telephone "Skype" which also blocks the port 80. If the problem is "Skype", you can:
    Go in Skype to Actions --> Options --> Connection --> remove the check mark at "use port 80 for an alternate port" and restart Skype. Now it should work.
  3. You have a firewall which blocks the Apache port. Not all firewalls are compatible with Apache, and sometimes deactivating the firewall is not enough and you must deinstall it. This error message indicates a firewall:
    "(OS 10038)Socket operation on non-socket: make_sock: for address 0.0.0.0:80,
    apr_socket_opt_set: (SO_KEEPALIVE)

    Also if Apache can start, but your browser can't connect to it.
  4. The same as with firewalls can happens with some virus scanners.
  5. You have XP Professional without service pack 1. You must have at least SP1 for XAMPP.
  6. You have a Windows 95 with an old winsock or your winsock is broken. In this case you can download and install the Winsock2 Update at Microsoft. Apache needs at least the Winsock 2.
  7. Your Winsocks 2 is changed from some program (e.v. virus) and now Apache can't start. In this case you can try a repair with the WinSock XP Fix.
Tip:
If you have problems with used ports, you can try the tool "xampp-portcheck.exe". Maybe it can help.

My CPU load is with the Apache almost by 99%

... or your browser can connect to the server, but doesn't show anything (always trying to load the page). In this case remove the "#" at the line "#Win32DisableAcceptEx" in the file "\xampp\apache\conf\extra\httpd-mpm.conf". Or add this line at the end, if not exists. Should be:
Win32DisableAcceptEx

Pictures and style-sheets are not displayed!

Sometimes there are problems with displaying pictures and style-sheets. Especially if these files located on a network drive. In this case you can enable (or add) one if the following lines in the file "\xampp\apache\conf\httpd.conf":
EnableSendfile off
EnableMMAP off

This problem can also be caused by programs for regulating bandwidth, like "NetLimiter".

 I would like to install the servers as a Windows service!

With Windows 2000, Windows XP, Vista you can install every server as Windows service. Just execute the batchfile. For example MySQL:
\xampp\mysql\mysql_installservice.bat
You can also use the Control Panel to enable the service (check the box "Svc").
If you want deinstall a service, there is also a batchfile. e.g. MySQL:
\xampp\mysql\mysql_uninstallservice.bat

How I can set a "root" password in MySQL? (method 1)

The easiest way is to use the security console, which you can access at http://localhost/security/.
This "console" creates a password for the MySQL user "root" and is adjusting the phpMyAdmin configuration.

How I can set a "root" password in MySQL? (method 2)

With the"XAMPP Shell" (command prompt) you can also change the password. Open the shell and execute this command:
mysqladmin.exe -u root password secret
Of course, your password should not be "secret", too. In the next step you must adjust the phpMyAdmin configuration for this new password. In the file "\xampp\phpMyAdmin\config.inc.php" change the lines:
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = '';

to:
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = 'secret';

Instead in the XAMPP Shell, you can also change the password with phpMyAdmin, and then adjust the phpMyAdmin configuration.

Can I use my own MySQL server?

Why not! Simply don't start the MySQL from the XAMPP package. So you can use your own MySQL server. Please note! Two servers cannot be started on one same port! If you have set a password for "root", please do not forget to edit the file "\xampp\phpMyAdmin\config.inc.php".

Everyone can use phpMyAdmin from outside!

In the basic configuration of XAMPP, phpMyAdmin have a public access. You can close this 'gap' with the "config.inc.php". Open the configuration file of phpMyAdmin and edit the 'auth_type' lines:
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = 'secret';
wird zu:
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = 'secret';

Before you can access the MySQL server, phpMyAdmin will now first ask for user and password. Don't forget to set a password for the user "root" first!

Where is the IMAP support for PHP?

As default, the IMAP support for PHP is deactivated in XAMPP, because there were some mysterious initialization errors with some home versions like Windows 98. Who works with NT systems, can open the file "\xampp\php\php.ini" to active the php exstension by removing the beginning semicolon at the line ";extension=php_imap.dll". Should be:
extension=php_imap.dll
Now restart Apache and IMAP should work. You can use the same steps for every extension, which is not enabled in the default configuration.

Other free opensource programs (e.g. forums) do not work!

Linux and Windows are different. Even most things with e.g. PHP are working in the same way, others not. Especially OSS programmers often uses Linux, and did not think about differences to other operating systems like Windows and are not making a portable code. There are also e.g. PHP functions/extensions, which are only available on Linux or Windows

Can I delete the "install" directory after "installation"?

No, better not. The scripts here are still needed for all additional packages (add-ons) and upgrades of XAMPP.

Where is a the Frontpage extension?

A Frontpage extension for Apache is only available for Linux, but not for Apache/Windows.

I would like to move the XAMPP package into another directory!

Yes, that's possible with XAMPP. After copying/moving of the XAMPP package, you have to use the "setup_xampp.bat". With this script the paths will be adjusted in the configuration files.
If you have installed some servers as Windows service, please first remove the service, move XAMPP, and now reinstall the service.
Warning:
Configuration files from your own scripts, like the forum software phpBB, will not be adjusted. You must do this yourself. But it's possible to write a "plug-in", thus such files will also be adjusted.

How do I activate the eaccelerator?

Like other (Zend-) extensions, you can activate it in "php.ini". In this file enable the line ";zend_extension = "\xampp\php\ext\php_eaccelerator.dll"". Should be:
zend_extension = "\xampp\php\ext\php_eaccelerator.dll"

I do not get any connection to my MS SQL server!

If the mssql extension was loaded in the php.ini, sometimes it comes to access problems when only TCP/IP is used. You can fix that problem with a newer "ntwdblib.dll" from Microsoft. Please replace the older file in "\xampp\apache\bin" and "\xampp\php" with the new one. Because of the license, we can't package a newer version of this file with XAMPP.

How do I work with the PHP mcrypt extension?

For this, we have opened a Topic in the forum with examples and also with some problem solutions:
http://www.apachefriends.org/f/viewtopic.php?t=301

Do Microsoft Activer Server Pages (ASP) work with XAMPP?

No. And Apache::ASP with the Perl Add-On is not the same. Apache::ASP only knows Perl-Script, but ASP from the Internet Information Server (IIS) also knows the normal VBScript.
But for ASP.NET, there is a 3rd party Apache modul available.
[↑] 

Author: Carsten Wiedmann
Last modification: Sun Jan 17 11:15:33 2010
© 2002-2012 Apache Friends, Imprin
XAMPP For Windows

XAMPP For Windows

Apache Friends XAMPP 2012 Survey

Last May XAMPP became 10 years old and we think this is a good time to think again about changes and improvements to XAMPP. That's what this survey is for: to find out what your needs are and what we can do to improve XAMPP in future releases.
Please help us, share this and take the survey!

http://www.apachefriends.org/en/survey-2012.html


We've released the new version of XAMPP 1.8.0, including:
  • Apache 2.4.2
  • MySQL 5.5.25a
  • PHP 5.4.4
  • phpMyAdmin 3.5.2
  • FileZilla FTP Server 0.9.41
  • Tomcat 7.0.28 (with mod_proxy_ajp as connector)
  • Strawberry Perl 5.16.0.1 Portable
  • XAMPP Control Panel 3.0.12 (from hackattack142)
Download older versions of XAMPP (even the "old" WAMPP) directly from SourceForge.

Vista Note:
Because of missing or insufficient write permissions in "C:\Program Files", we recommend to use alternate folder for XAMPP ("C:\xampp" or "C:\meinverzeichnis\xampp").


Installation with the Installer

   Using the installer version is the easiest way to install XAMPP.
After the installation is complete, you will find XAMPP under Start | Programs | XAMPP. You can use the XAMPP Control Panel to start/stop all server and also install/uninstall services.

The XAMPP control panel for start/stop Apache, MySQL, FilaZilla & Mercury or install these server as services.

"Installation" without the Installer

Unzip the zip archives into the folder of your choice. XAMPP is extracting to the subdirectory "[Ziel]\xampp" below the selected target directory. Now start the file "setup_xampp.bat", to adjust the XAMPP configuration to your system.
If you choose a root directory "C:\" as target, you must not start "setup_xampp.bat".
Like with the installer version, you can now use the "XAMPP Control Panel" for additional tasks.

I want to start XAMPP without setup

If you extract XAMPP in a top level folder like "C:\" or "D:\", you can start most servers like Apache or MySQL directly without execution of the file "setup_xampp.bat".
Not using the setup script, or selecting relative paths in the setup script, is preferred if you are installing XAMPP on a usb drive. Because on each pc such a drive can have an other drive letter. You can switch from absolute to relative paths at any time with the setup script.

Start, stop, test the XAMPP servers

The universal control center is the "XAMPP Control Panel" (thanks www.nat32.com). It is started with:
\xampp\xampp-control.exe
As you know this from older XAMPP versions, you can also use some batchfiles to start/stop the servers:
Apache & MySQL start:
\xampp\xampp_start.exe
Apache & MySQL stop:
\xampp\xampp_stop.exe
Nur Apache start:
\xampp\apache_start.bat
Nur Apache stop:
\xampp\apache_stop.bat
Nur MySQL start:
\xampp\mysql_start.bat
Nur MySQL stop:
\xampp\mysql_stop.bat
Mercury Mailserver start:
\xampp\mercury_start.bat
Mercury Mailserver stop:
\xampp\mercury_stop.bat
FileZilla Server start:
\xampp\filezilla_start.bat
FileZilla Server stop:
\xampp\filezilla_stop.bat

Test

After starting of Apache (and MySQL), go to the address http://localhost/ or http://127.0.0.1/ in your browser and examine all of the XAMPP examples and tools.


Installing a particular server as as service

Each server in XAMPP you can install also as Windows service:
Apache service install:
\xampp\apache\apache_installservice.bat
Apache service uninstall:
\xampp\apache\apache_uninstallservice.bat
MySQL service install:
\xampp\mysql\mysql_installservice.bat
MySQL service uninstall:
\xampp\mysql\mysql_uninstallservice.bat
FileZilla service (un)install:
\xampp\filezilla_setup.bat
Mercury:
No service installation available!

The XAMPP upgrades

With a new XAMPP version, there is normally a upgrade package too. Additionally, we have sometimes small patches between the releases.
An upgrade is always problematically and there can be errors in the upgrade process. Because of this, you should always make a backup from your XAMPP folder before you upgrade it. werden.
We are trying to adjust your configuration files during the upgrade progress, if necessary. Especially if a new XAMPP have a lot of changes compared to the old one, we are providing no upgrade package for security reasons. Sorry.
As with the add-ons, install the upgrade directly into the XAMPP directory (e.g. "C:\xampp"). And you must also start the setup script "setup_xampp.bat".

The XAMPP security console

As mentioned at another place, XAMPP is not meant for production use but only for developers in a development environment. XAMPP is configured is to be as open as possible and to allow the web developer anything he/she wants. For development environments this is great but in a production environment it could be fatal.
Here a list of missing security in XAMPP:
  • The MySQL administrator (root) has no password.
  • The MySQL daemon is accessible via network.
  • phpMyAdmin is accessible via network.
  • The XAMPP demopage is accessible via network.
  • The default users of Mercury and FileZilla are known.
All points can be a huge security risk. Especially if XAMPP is accessible via network and people outside your LAN. It can also help to use a firewall or a (NAT-) router. In case of a router or firewall, your pc is normally not accessible via network. It is up to you to fix these problems. As a small help there is the "XAMPP Security console".
Please secure XAMPP before publishing anything online. A firewall or an external router are only sufficient for low levels of security. For slightly more security, you can run the "XAMPP Security console" and assign passwords.
If you want have your XAMPP accessible from the internet, you should go to the following URI which can fix some problems:
http://localhost/security/


With the security console you can set a password for the MySQL user "root" and phpMyAdmin. You can also enable a authentication for the XAMPP demopages.


This web based tool does not fix any additional security issues! Especially the FileZilla FTP server and the Mercury mail server you must secure yourself. If you don't need these servers, don't start them. A server which is not started, is very secure!

Method A: The Installer version

If you installed XAMPP using the installer version, please use the Uninstaller! The Uninstaller will delete all XAMPP entries from your registry and it will uninstall some installed services included with XAMPP. We highly recommend that you use the Uninstall program for removing XAMPP installations from the Installer version.
Please backup all the data you want to keep before uninstalling XAMPP.

Method B: The ZIP & 7zip versions

Shut down all XAMPP servers and exit all panels. If you installed any services, uninstall and shut them down too. Now simply delete the entire folder where XAMPP is installed. There are no registry entries and no environment variables to clean up... just simply good, clean code!

Question 1: What is the "Lite" version of XAMPP?

XAMPP Lite (means "light" as in "light-weight") is a smaller bundle of XAMPP components, which is recommended for quick work using only PHP and MySQL. Some servers or tools such as Mercury Mail and FileZilla FTP are missing in the Lite version.

Question 2: Where should I place my web content?


The main directory for all WWW documents is \xampp\htdocs. If you put a file "test.html" in this directory, you can access it with the URI "http://localhost/test.html".
And "test.php"? Just use "http://localhost/test.php". A simple testscript can be:
<?php
    echo 'Hallo world';
?>

A new subdirectory for your web? Just make a new directory (e.g. "new") inside the directory "\xampp\htdocs" (best without whitespaces and only ASCII), create a test file in this directory and access it with "http://localhost/new/test.php".

Further specifics:

HTML:
Executable: \xampp\htdocs
Allowed endings: .html .htm
=> basic package
SSI:
Executable: \xampp\htdocs
Allowed endings: .shtml
=> basic package
CGI:
Executable: \xampp\htdocs and \xampp\cgi-bin
Allowed endings: .cgi
=> basic package
PHP:
Executable: \xampp\htdocs and \xampp\cgi-bin
Allowed endings: .php
=> basic package
Perl:
Executable: \xampp\htdocs and \xampp\cgi-bin
Allowed endings: .pl
=> basic package
Apache::ASP Perl:
Executable: \xampp\htdocs
Allowed endings: .asp
=> basic package
JSP Java:
Executable: \xampp\tomcat\webapps\java (e.g.)
Allowed endings: .jsp
=> Tomcat add-on
Servlets Java:
Executable: \xampp\tomcat\webapps\java (e.g.)
Allowed endings: .html (u.a)
=> Tomcat add-on

Question 3: Can I move the XAMPP installation?

Yes, that's possible with XAMPP. After moving of the XAMPP directory, jou must execute "setup_xampp.bat". The paths in the configuration files will be adjusted with this step.
If you have installed any server as Windows service, you must first remove the Windows service, and after the moving you can install the service again.
Warning:
The configuration files from your own scripts, like for the software phpBB, are not adjusted. This task is up to you. But it's possible to write a "plug-in" the installer. With such a plug-in, the installer can adjust such files too..

Question 4: "automatic start pages" for the WWW directories?

The standard filename for the Apache function "DirectoryIndex" is "index.html" or "index.php". Every time you are just browsing to a folder (e.g. "http://localhost/xampp/"), and Apache can find such a file, Apache is displaying this file instead of a directory listing.

Question 5: Where can I change the configuration?

Almost all settings in XAMPP you can change with configuration files. Just open the file in a textedit and change the setting you want. Only FileZilla and Mercury should be configured with the application config tool.
A list of the configuration files you can find in the table configuration files.

What is where?

Configuration files

File (Directory) Usage
\xampp\apache\conf\httpd.conf The main configuration file for Apache. It's including other files from the subdirectory "extra".
\xampp\FileZillaFTP\FileZilla Server.xml The configuration file for the FileZilla FTP server. It's configured with the application "FileZilla Server Interface.exe" (button "Admin" in CP).
\xampp\MercuryMail\mercury.ini The configuration file for the Mercury SMTP server. It's configured with the application "mercury.exe" (button "Admin" in CP).
\mysql\bin\my.ini The configuration file for the MySQL Server.
\xampp\php\php.ini The configuration file for PHP.
\xampp\phpMyAdmin\config.inc.php The configuration file for phpMyAdmin.
\xampp\sendmail\sendmail.ini The configuration file for msmtp (sendmail compatible interface).
\xampp\webalizer\webalizer.conf The configuration file for the Webalizer.

Logfiles

File (Directory) Usage
\xampp\apache\logs\error.log The error log from Apache. Additional files can be in the same directory (if enabled).
\xampp\FileZillaFTP\Logs The logfiles from FileZilla FTP server (if enabled).
\xampp\MercuryMail\LOGS\ In subdirectories of this files are the logfiles from the several Mercury SMTP server modules.
\xampp\mysql\data\mysql.err The error log from MySQL. Additional files can be in the same directory (if enabled).
\xampp\sendmail\sendmail.log The logfile from msmtp (sendmail compatible interface).

common directories

File (Directory) Usage
\xampp\anonymous Download directory for anonymous FTP access.
\xampp\cgi-bin For the CGI scripts.
\xampp\htdocs There are the files from your homepage.
\xampp\MercuryMail\MAIL The mail postboxes.
\xampp\mysql\data The databases.
\xampp\webdav The directory for WebDAV access (if enabled).        

Author: Kay Vogelgesang
Co-Autor: Kai 'Oswald' Seidler
Last modification: Sun Aug 26 22:24:45 2012
© 2002-2012 Apache Friends, Imprint

How to Add a Background Image on your USB Pendrive


Are you bored looking at the same old white screen when you open you Pendrive. Now is the time to change the look of any drive by setting a wallpaper in its directory. Just follow the simple copy paste steps and you would have a Background Image on your Pendrive.

Just follow the simple steps to set a Background Image on your Pendrive

1. Select an image on your computer which you want to appear as background image.

2. Rename that image to wall.

3. Now copy and paste the image to your Pendrive.

4. Now create a new notepad file and paste the following code in it.


[ExtShellFolderViews]    
{BE098140-A513-11D0-A3A4-00C04FD706EC}={BE098140-A513-11D0-A3A4-00C04FD706EC}
[{BE098140-A513-11D0-A3A4-00C04FD706EC}]
IconArea_Image=wall.jpg

5. Save the file as desktop.ini in your pendrive and change the save as type to all files




6. Now Enter your Pendrive and press F5 to refresh. 

You would see something like this:-


Note: This trick works best on Windows Xp and Vista . Wallpaper could also be set in any other directory like C:, D:, E: etc. Just copy and paste the files in the directory where you want the wallpaper to appear.