If you want to build and test PHP websites on your Windows PC without paying for hosting, WampServer is the fastest way to get a full local server running. One installer gives you Apache (the web server), PHP (the scripting language), and MySQL/MariaDB (the database) — the classic stack behind WordPress, Laravel, and millions of live websites. In this guide you will install WampServer 3.4.0 on Windows 11, fix the one dependency that trips up almost every beginner, and end with a working PHP project connected to a real database.

This tutorial assumes you are comfortable clicking through a Windows installer and typing a few commands in PowerShell. No prior server experience needed.

Prerequisites

  • 64-bit Windows 10 or 11. WampServer 3.x dropped 32-bit support entirely; it will not install on 32-bit Windows.
  • Administrator rights on the PC, because the installer registers Apache and MySQL as Windows services.
  • About 1 GB of free disk space (the installer is roughly 500 MB and needs room to unpack).
  • Port 80 free. If you run Skype, IIS, SQL Server Reporting Services, or TeamViewer on this machine, they may already own port 80. We will check and fix that in the troubleshooting section.
  • Microsoft Visual C++ Redistributable (2015–2022, x64). This is the dependency 90% of failed installs miss. WampServer 3.4 will simply not start without it, and the error message is cryptic.

Step 1: Install the Visual C++ Redistributable (do this first)

Before touching WampServer, install the Visual C++ runtime libraries. Apache and PHP on Windows are compiled against them, and a fresh Windows 11 install often lacks the exact version they need. Without it you get the infamous "The code execution cannot proceed because MSVCR110.dll was not found" error, or Apache silently refuses to start with an orange tray icon.

Grab "Microsoft Visual C++ Redistributable for Visual Studio 2015–2022 (x64)" from Microsoft's official downloads page (learn.microsoft.com, "Latest supported Visual C++ Redistributable downloads"). Run the VC_redist.x64.exe installer with default options and reboot if it asks. If you already have it, reinstall the newest build anyway — WampServer's maintainers note that the latest Apache add-ons need version 14.51.36247 or newer.

To verify from an elevated PowerShell window:

Get-ItemProperty "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*" |
  Where-Object { $_.DisplayName -like "Microsoft Visual C++*" } |
  Select-Object DisplayName, DisplayVersion

This lists every Visual C++ runtime registered on the system. You should see at least one entry for the 2015–2022 x64 package. If the list is empty, go back and install it — nothing else in this guide will work until you do.

Step 2: Download WampServer 3.4.0 (64-bit)

Download the installer from the official site, wampserver.com (files are mirrored on wampserver.aviatechno.net, the maintainer's download site). Get WampServer 3.4.0 64-bit — the current release, which ships Apache 2.4.65, PHP versions 8.0 through 8.5.0 side by side, MySQL 8.4.7, MariaDB 11.4.9, and phpMyAdmin 5.2.3.

Download only from wampserver.com or wampserver.aviatechno.net. Third-party download sites bundle adware into repackaged installers — the official one is clean and free.

Save the .exe somewhere easy to find, like your Downloads folder.

Step 3: Run the installer as administrator

Right-click the installer and choose Run as administrator. (Double-clicking sometimes works, but admin rights prevent permission errors later when services register.)

Walk through the wizard:

  1. Accept the license agreement.
  2. Choose the install folder. The default C:\wamp64 is fine — keep the path short with no spaces, since some PHP tools dislike spaces.
  3. When asked to choose a default browser and text editor, pick your real browser (Chrome/Edge/Firefox) and your code editor (VS Code, Notepad++, etc.). WampServer opens localhost links in this browser.
  4. Leave the component selection at defaults and finish the install.

If Windows Firewall prompts you to allow httpd.exe (Apache) through the firewall, click Allow access. Blocking it is a common reason localhost later refuses to load.

Step 4: Launch WampServer and read the tray icon

Start WampServer from the Start menu or the desktop shortcut. It lives in the Windows notification area (system tray) as a "W" icon. The icon's color tells you everything:

  • Red — WampServer is offline; no services running.
  • Orange — one or more services failed to start (this is the state you must fix — see troubleshooting).
  • Green — Apache and MySQL are both running. This is what you want.

The icon may sit orange or red for 10–20 seconds on first launch while services start. If it settles on green, you are ready. Left-click the icon to open the manager menu, where you can start/stop services, open phpMyAdmin, switch PHP versions, and reach the config files.

Step 5: Test your server at localhost

Open your browser and visit http://localhost. You should see the WampServer welcome page, which lists your Apache version, PHP version(s), loaded extensions, and quick links to your projects and tools.

Seeing that page means Apache is serving requests correctly on port 80. If the browser says "This site can't be reached" instead, jump to the troubleshooting section — it is almost always a port conflict or the firewall.

Step 6: Create your first PHP project

WampServer serves files from C:\wamp64\www — its document root. Every subfolder you create there becomes a site at http://localhost/foldername.

  1. Open C:\wamp64\www in File Explorer and create a folder named myproject.
  2. Inside it, create a file named index.php with this content:
<?php
echo "Hello from WampServer!";
phpinfo();
?>

Visit http://localhost/myproject/. You should see the greeting followed by PHP's famous configuration table — proof that PHP is processing your files through Apache. The phpinfo() table also confirms exactly which PHP version and extensions are active, which is handy when debugging later.

Step 7: Create a MySQL database with phpMyAdmin

Click the green W icon, then phpMyAdmin (or visit http://localhost/phpmyadmin directly). Log in with username root and a blank password — that is the WampServer default.

  1. Click the Databases tab.
  2. Type myproject_db in "Create database" and click Create.
  3. Open the new database, click SQL, and run a quick test table:
CREATE TABLE users (
  id INT AUTO_INCREMENT PRIMARY KEY,
  name VARCHAR(100) NOT NULL,
  created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

INSERT INTO users (name) VALUES ('Ravi');

Click Browse on the users table to see your row. You now have a live database. From PHP you connect to it with host localhost, user root, and an empty password:

<?php
$conn = new mysqli("localhost", "root", "", "myproject_db");
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}
echo "Database connected!";
?>

Save that as C:\wamp64\www\myproject\db.php and open http://localhost/myproject/db.php. "Database connected!" means your full stack — Apache, PHP, MySQL — is working end to end.

Step 8 (optional): Switch PHP versions

WampServer 3.4 ships several PHP versions side by side. Right-click the tray icon, go to PHP → Version, and pick another installed version — WampServer swaps it in and restarts Apache automatically. This is genuinely useful: test your project on PHP 8.3 for your production server while developing on 8.4, with one click. Extra PHP versions can be added as add-ons from wampserver.aviatechno.net.

Verify it worked

Run through this checklist:

  • The tray icon is green.
  • http://localhost shows the WampServer welcome page.
  • http://localhost/myproject/ renders your PHP page and the phpinfo() table.
  • http://localhost/phpmyadmin logs in as root and shows your myproject_db database.
  • http://localhost/myproject/db.php prints "Database connected!".

All five green means your local development server is fully operational.

Common issues & fixes

1. Orange tray icon — Apache won't start (port 80 conflict)

This is the #1 WampServer problem. Another program already owns port 80. Find it:

netstat -ano | findstr ":80"

The last column is the process ID (PID). Identify the culprit:

tasklist /FI "PID eq 1234"

Replace 1234 with the real PID. The usual offenders: IIS (service "World Wide Web Publishing Service" — stop it in services.msc and set it to Manual), Skype (disable "use port 80/443" in its settings), and SQL Server Reporting Services. Once the port is free, right-click the W icon → Restart All Services.

2. "MSVCR110.dll / VCRUNTIME140.dll was not found"

You skipped Step 1. Install (or reinstall) the Visual C++ Redistributable 2015–2022 x64 from Microsoft, then restart WampServer. If the error names an older DLL, also install the 2012 and 2013 redistributables — WampServer's download page lists every required package.

3. Red icon — services won't start at all

First check you ran the installer as administrator. Then open services.msc and look for wampapache64 and wampmysqld64. Try starting them manually — Windows will show the real error. You can also restart from an elevated command prompt:

net stop wampapache64
net start wampapache64
net stop wampmysqld64
net start wampmysqld64

4. "Access denied" for root in phpMyAdmin after setting a password

If you changed the MySQL root password via phpMyAdmin's user accounts page, phpMyAdmin itself still tries the old (blank) credentials. Edit C:\wamp64\apps\phpmyadmin5.2.3\config.inc.php (the exact folder name matches your phpMyAdmin version) and set $cfg['Servers'][$i]['password'] to your new password, then restart all services.

5. localhost loads but my project folder shows a 404

Check the folder is directly under C:\wamp64\www and the URL matches its name exactly (http://localhost/myproject/, case-sensitive on some setups). Also confirm the tray icon is green — an orange icon means Apache is down even if a cached page renders.

Conclusion

You now have a complete local web server on Windows: Apache serving pages, PHP executing your code, and MySQL storing your data — the same trio that powers a huge share of the live web. Build your site in C:\wamp64\www, test everything locally for free, and only pay for hosting when you are ready to go live.

Need help moving a WampServer project to a live Linux server, or setting up staging environments for a client project? XpertBees handles server setup, migrations, and managed hosting — reach out through the contact page.