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


EmoticonEmoticon