How to Create a Local WordPress Website in Windows with Xampp

How to Create a Local WordPress Website in Windows with Xampp

I believe that all WordPress users should have a local installation of WordPress on their PC. The benefits are numerous – you can test themes, plugins, and fiddle with a blog’s design without anyone seeing. It’s lightning quick. There is no danger of being indexed by Google. You can even take a whole website, download it to a local WordPress installation, and play around with it to your heart’s content before uploading the changes.

But local installations of WordPress aren’t just for developers. For instance, I have an offline accountability blog that I use to keep track of my life goals. I have another local WordPress installation where I draft articles that I write for clients.

Whilst setting up a local WordPress website may instinctively feel like it would be a complicated process, in reality, it is not. Any competent PC user can have a local WordPress installation up and running within a few short minutes.

1. Download and Install Xampp

In order to install and run WordPress locally, you need to create a local server environment. Fortunately, this is easily done with a free piece of software called Xampp. You can download Xampp from this location – click on the “Installer” option:

Download Xampp

Double click on the installation file once the download has been completed. You will be prompted to enter an installation directory:

Install Xampp

It is recommended that you do not use the Program Files directory, because of potential write permissions issues. Please note that the directory you choose at this stage will be where your local WordPress site’s files are located.

Proceed through the installation process – there is no need to adjust any of the default installation settings.

2. Set Up Xampp

Once the installation process has completed, load Xampp and Start the Apache and MySQL modules:


You may be presented with a security alert that looks something like this:

Windows Security Alert

You need to select “Unblock”. Once you have done so, the local server environment should be up and running. To check, open your browser and enter “http://localhost/” into the address bar. You should see something like this:


3. Create a Database

Every WordPress installation needs its own database, so before we install WordPress proper, we need to create one.

From the same screen where you Started the Apache and MySQL modules, select the MySQL Admin button. This will open up phpMyAdmin in a browser tab. Select the “Databases” tab – here you will create your database:

Create Database

You can use whatever name you want, but I would recommend something descriptive. Click on “Create”, and you’re done!

4. Download, Configure and Install WordPress

Grab yourself a copy of the latest version of WordPress from the home page. Once downloaded, unzip the file. I would recommend that you give the resultant folder the same name as your database.

Find the location where you installed Xampp (if you didn’t change the directory during installation, it will be “C:/xampp”), and open up the “htdocs” directory. Paste your WordPress folder into this directory. This is where your local website’s files will live.

Double click on your WordPress folder and open the “wp-config-sample.php” file with Notepad. There are a few variables you need to change in here:


Obviously, your database name may not be “mytestsite” – it will be whatever you named your database in phpMyAdmin.

Once you’re done, save the file and rename it as “wp-config.php” (i.e. remove “-sample” from the filename).

The only thing left to do now is install WordPress using the 5 minute installation process (which in reality will take about 30 seconds).

Open up a fresh browser tab and navigate to “http://localhost/yoursitename/”, where “yoursitename” is the name of your WordPress site’s directory. You will be presented with a familiar screen:

WordPress Installation

Fill in the details, hit the “Install WordPress” button, and you’re done! You are now the proud owner of an offline WordPress site:

Offline WordPress Site

You are now free to edit and add to the site in whatever way you see fit. You have access to all themes and plugins as you would do with a “normal” WordPress installation. You can even add the site to your ManageWP account by using port forwarding. Furthermore, you can create as many of these sites as you wish, just by repeating steps 3 and 4.


Tom Ewer

Tom Ewer is the founder of He has been a huge fan of WordPress since he first laid eyes on it, and has been writing educational and informative content for WordPress users since 2011. When he's not working, you're likely to find him outdoors somewhere – as far away from a screen as possible!


  1. faiza

    I an new to wordpress,i have done the above instruction upto download wp,i have change db name,db user name and password and saved it but when i enter http://localhost/mywebsitename it gives me error like url not found 404 error,what should i do?

    1. Marko Tanaskovic

      Hi Faiza, here are some articles that may help you to resolve this issue:,

      In case you still can’t identify the issue, you can always ask a question on WordPress support forums:

      Hope it helps!

  2. Marcy

    I’ve reached the install WordPress part, and can’t get the localhost to work. I changed the localhost from 80 to 8000 so XAMPP would start Apache. I used localhost:8000/website1 to get to myphp and set up the database – that worked. I’m trying to get into the WordPress page using localhost:8000/ewcpatest (the name of the database and website) and it just sits there spinning – nothing happens. Any idea what I’m doing wrong? Thanks.

  3. Nina

    Found your article and it is just what i need. However, How do i transfer the content online? When i get hosting of course?

    1. Fadhili

      Were you answered?
      Transfer of wordpress websites can be done using all in one wordpress plugin

  4. Sory

    Hey, sometimes I see a 400 website error when I view your webpage. Just a heads up, regards

  5. Rahuk

    Nice article.
    I have a problem now . I have installed wordpress and when I try the url http://localhost/wordpressblog/ , i got the below message in browser

    This site can’t be reached

    localhost refused to connect.
    Search Google for localhost wordpress blog

    1. nirajan

      you can try localhost/wordpress ( C:\xampp\htdocs\wordpress ,copy and paste wordpress file(not wordpress-4.8) )
      or you just have to find the folder name of extracted wordpress file and make sure you pasted that wordpress file inside htdocs folder( C:\xampp\htdocs )


    Awesome article, I am looking for the guide to make a new site, finally found it in your blog(). thanks for sharing this.

  7. RickyO

    Using xampp on a local Win machine, once the install was correct and working, I’m not comfortable with having the DB_User and DB_Password being “root” and “”. Since using xampp doesn’t really have a control panel, how can I change those two fields to something else? I tried changing them in the wp-config file, but all that did is disallow log into the DB.
    Thanks in advance.

  8. priyanka

    after filling username,password,mail_id.. nd clicking on Install WordPress it’s giving an error
    The localhost page isn’t working…localhost is currently unable to handle this request.HTTP ERROR 500

  9. Collins

    I’m new to wordpress. After installing xampp and starting Apache and Mysql, I tried to check the localhost to be sure everything is ok. But localhost is not working, it gives me an error that the site can’t be reached. I tried changing the apache port number but that didnt worK. Please can anybody help me with this.


    1. Arun

      After you click start, the status will change to green and your port number will be displayed. Click the Admin button which will take you to the localhost page. Now click the phpMyAdmin tab.

      If you don’t get this window at all, either you have installed xampp under program files folder or your firewall is preventing your apache to start.

  10. RonDay

    When I start to run the XAMPP installer, I get the following message: “Because of an activated User Account Control (UAC) on your system some functions of XAMPP are possibly restricted. With UAC please avoid to install XAMPP to C:\ProgramFiles (x86) (missing write permissions).” Does anyone know what this means and what do I need to do?

    1. RonDay

      Never mind. I found the answer.

  11. Ariel

    Great tutorial! Everything went very smoothly once I changed the xampp port to 8080 by editing the apache config. Thanks!

  12. Katherine

    Hi Tom. A great article, thank you for your help and time.
    I have just installed XAMPP, however when I run the program I am getting an error message (as below) with both Apache and MySQL. I have uninstalled Skype, as this seemed to be an issue. I have also run as Administrator, but the error still exists. I am very much a novice at this so I would appreciate any help offered.
    Thank you, Katherine

    1:08:50 PM [Apache] Autostart active: starting…
    1:08:50 PM [Apache] Problem detected!
    1:08:50 PM [Apache] Port 80 in use by “Unable to open process” with PID 4!
    1:08:50 PM [Apache] Apache WILL NOT start without the configured ports free!
    1:08:50 PM [Apache] You need to uninstall/disable/reconfigure the blocking application
    1:08:50 PM [Apache] or reconfigure Apache and the Control Panel to listen on a different port
    1:08:50 PM [Apache] Attempting to start Apache service…

    1:08:51 PM [mysql] Autostart active: starting…
    1:08:51 PM [mysql] Problem detected!
    1:08:51 PM [mysql] Port 3306 in use by “”C:\Program Files\MySQL\MySQL Server 5.1\bin\mysqld” –defaults-file=”C:\Program Files\MySQL\MySQL Server 5.1\my.ini” MySQL”!
    1:08:51 PM [mysql] MySQL WILL NOT start without the configured ports free!
    1:08:51 PM [mysql] You need to uninstall/disable/reconfigure the blocking application
    1:08:51 PM [mysql] or reconfigure MySQL and the Control Panel to listen on a different port
    1:08:51 PM [mysql] Attempting to start MySQL service…

  13. Joe

    new member

  14. Nelson

    Hi there,

    I know XAMPP is way cool developing website locally. However, I’ve noticed on my Windows 10 after I install it my Skype and Chrome won’t open anymore have you experience this or someone you know they did? if so, how’d you address this issue?

  15. BriCo964

    I’m new to WordPress. Before installing it, I ran XAMPP to crate a database, but
    I keep getting a token mismatch error when I click on Databases in the control panel. .When the control panel first come up after ainstallation, I interupted the process and later re-started the conttrol panel from the XAMPP folder. Was this a mistake?
    I haven’t installed WordPress yet. I have tried to clear my browser cashe but this didn’t solve the problem. My browser is Firefox. How can I get rid of this error?

  16. Rogerson

    Long Path Fixer presents you with a simple list of files and folders in the current directory (including “hidden” files and folders). You can drag and drop files or folders onto it and it will navigate directly to path of whatever you dropped.

  17. neel

    i followed all steps but in the end when i open ”http://localhost/mynewsite/” in a new tab, it shows :
    Object not found!

    The requested URL was not found on this server. If you entered the URL manually please check your spelling and try again.

    If you think this is a server error, please contact the webmaster.

    Error 404

    Apache/2.4.17 (Win32) OpenSSL/1.0.2d PHP/5.6.19

  18. Aman Dhanda

    Hi Tom, really nice article. But most of the times when we run xampp, we came up with an error saying ports 80 or 443 are in use. I was doing some research on this port issue. So, I came up with a solution. Through this, we can use any port of our choice in our xampp installation. I have also written a post on this issue . If you think it would help others please add this link in your post. I would really appriciate it. Thanks man..

  19. Nico Ga-ang

    This is awesome! You are so great Tyler Moore, Thank you so much! looking forward to gain more knowledge about wordpress from you.

    1. Nico Ga-ang

      Disregard the “Tyler Moore”, My mistake it was TOM EWER! THANK YOU SIR!

  20. segun

    Thanks for this straightforward and easy guide

  21. abc

    How to replace it with real site?

  22. Laurelle

    I am not a computer person. I assumed that I was to put my website name and my wordpress user name and password in the fields….but that does nothing. What exactly am I suppose to be putting in those boxes?

    // ** MySQL settings – You can get this info from your web host ** //
    /** The name of the database for WordPress */
    define(‘DB_NAME’, ‘ ‘);

    /** MySQL database username */
    define(‘DB_USER’, ‘ ‘);

    /** MySQL database password */
    define(‘DB_PASSWORD’, ‘ ‘);

    /** MySQL hostname */
    define(‘DB_HOST’, ‘localhost’);

  23. Laurelle

    Open up a fresh browser tab and navigate to “http://localhost/yoursitename/”, where “yoursitename” is the name of your WordPress site’s directory. You will be presented with a familiar screen:

    I have put in my wordpress org user name, wordpress com user name and my websites name and the file directory name that I just created….none of these will open up and all I get is a 404 error message….

    What am I suppose to be putting in the yoursitename place?

  24. Laurelle

    It says we are suppose to download wordpress twice?

    So I skipped that step and went to the localhost/mysitename….

    I get an error message.

    I don’t actually want to redo my wordpress site offline. I want to save a hardcopy. That’s it. I don’t need to update it offline. I find this all very complicated for something that I just want saved offline without actually needing to make changes.

  25. Gary

    Would this installation allow folders from the lan to be presented to the user?

    I am using wordpress as an intranet and am struggling really badly with this , and its fundamental to he usage of the intranet.


  26. robic

    hey ,i want to move my wordpress website from one machine to other because the existing hardware is too slow,so to overcome this problem we are trying to have whole new hardware how i install xamp and take a backup of wordpress from old machine to new one.

    thankyou in advance.


    hi tom sir,
    actually i m trying to learn webdeveloping but i m cofussed that where should i give my web site’s name in localhost. when i navigate my local host site,where i dont know the name of my wordpress site’s directory.

    1. Nemanja Aleksic

      The website name in localhost is the name of the folder where the website is located. If you put your website in the c:\htdocs\meera folder, you’ll open it in your browser by typing http://localhost/meera/

  28. lovely leaf studio

    its work for me. This is very fun. That way, I can edit all wordpress theme without fear.

  29. Nadine Freedman


    This is my first time attempting to set up a local installation of WordPress. The tutorial is straightforward, but when I got to the part where I’m supposed to set up the database and select the MySQL admin button this is the error message that I get taken to a separate screen with the following message:

    “Object not found!

    The requested URL was not found on this server. If you entered the URL manually please check your spelling and try again.

    If you think this is a server error, please contact the webmaster.

    Error 404

    Apache/2.4.12 (Win32) OpenSSL/1.0.1l PHP/5.5.24 ”

    Help! Any guidance is appreciated.

  30. Michael J

    Thanks Tom for a most accurate and useful set of instructions. It worked great for me.

  31. Conrad

    Unfreakin real how easy this was! Thanks

  32. seema


    can you help me. Downloaded xamp and tried to run it. got the following error
    Error: Apache shutdown unexpectedly.
    20:39:32 [Apache] This may be due to a blocked port, missing dependencies,
    20:39:32 [Apache] improper privileges, a crash, or a shutdown by another method.
    20:39:32 [Apache] Press the Logs button to view error logs and check
    20:39:32 [Apache] the Windows Event Viewer for more clues
    20:39:32 [Apache] If you need more help, copy and post this
    20:39:32 [Apache] entire log window on the forums

    can u help solve it pls

    1. Batboy4e

      Dude, I am not sure anyone answered but Skype blocks the default port. Stop Skype and try again.

    2. Traceman

      Right click Xampp and then go to compatibility. Check start as Administrator. Or right click it and then click on start as Admin. That worked for me!

  33. Mark

    Pari, double check the spelling and folder location

  34. Mark

    Brilliant, I prefer html simply due to it’s more robust security however wordpress is popular and far more versatile, your instructions are very clear and got it working first time. I am running win 8. This was something I needed to get around to anyway.
    Thanks again for a detailed, yet easy to follow guide, it’s a pity wordpress isn’t as quick as this on a live site !

  35. Pari

    Hi there,
    I tried running the instructions: Open up a fresh browser tab and navigate to “http://localhost/yoursitename/”, where “yoursitename” is the name of your WordPress site’s directory. You will be presented with a familiar screen:
    Every time I try running this with I get ‘HTTP Error 404.0 – Not Found’
    even I tried “http://localhost:443/yoursitename/”, but I get ‘This page can’t be displayed’

    Any help please?

  36. Sister Therese Rich

    Trying to install WordPress to localhost, went well until I was ready for the 5 min install. Followed directions; changed wp-config name. Now when i try it keeps asking for wp-config-sample. any suggestions?

    Thank you

  37. Bonnie

    Trying to install WordPress to localhost, went well until I was ready for the 5 min install. Now I just get ‘Error establishing a database connection’. I can’t find the problem. Any suggestions?

  38. mix624


    Is it possible to make a wordpress site into a standalone executable file that I can give away as a download ?
    I have a site with 100´ds of mp3´s and I want to make it downloadable so anyone can use it offline.

    I have tried some of those site downloaders for offline browsing but the plugins for the audio player doesnt work with that and it doesnt seem to be a good idea ? Any tips ? Wouldldnt work if someone who wants the site have tp gp through a lot of complicated steps though, like with Xampp.

  39. Nick

    Tom, you are the coolest!

  40. Van Le

    I’m using Laragon (
    Install WordPress is just one click and see.
    Note: Laragon is isolated. You can move the project to everywhere you want.

    1. nevanswa

      hi Van,
      can you explain how you installed WordPress with just one click???? I’m lost!

  41. Victoria

    Thanks, your instructions helped me install a localhost version of WordPress for test purposes on the first try.

  42. matia

    I succesfully installed my offline local hosted wordpress website with xampp. I bought a wordpress theme, but when I try to upload and install it, wrdpress give me this message:
    “Warning: POST Content-Length of 14577143 bytes exceeds the limit of 8388608 bytes in Unknown on line 0
    Are you sure you want to do this?

    Please try again”
    What can be the problem? do you think it is because of a too big page for a local host on my PC?

    1. Igor Kolosov

      Which settings did you put in Xampp? For example, how much memory did you give to the local server?

      1. Nick

        Hi Igor,

        We tested this using virtual ware in college. At the time I personally just assigned about the same for a Windows 7 virtual system (2048Mb).

        Hope this could help?


  43. Raphael

    Worked perfectly on the first try, thanks!!

  44. George

    Tom, will following these very clear instructions (THANK YOU!!) create a problem with a SQL database I use for a different program? My contact manager (ACT!) uses an SQL database and I ‘m assuming that the SQL this program accesses won’t clash. Do I need to be worried? And thanks again for such very clear directions!!

    1. George

      I tracked down the answer from both Apache and ACT! and all is okay. And it has worked so far just fine. Now I need to build the site I want and then figure out how to upload it to replace the current non-WordPress site for my url. Happy days! Thank you, Tom!

  45. Peter

    Hi there,

    I tried running the instructions: Open up a fresh browser tab and navigate to “http://localhost/yoursitename/”, where “yoursitename” is the name of your WordPress site’s directory. You will be presented with a familiar screen:
    Everytime I try running this with I get the following;

    Object not found!

    The requested URL was not found on this server. If you entered the URL manually please check your spelling and try again.

    If you think this is a server error, please contact the webmaster.

    Error 404

    Apache/2.4.10 (Win32) OpenSSL/1.0.1i PHP/5.5.15

    any help please????

    1. Lee

      I had the same problem (I’m running Windows 8.1 and just downloaded version 4 of WP). The way I fixed it was to go back through and be more careful about two steps I had rushed through, although I cannot tell you which measure actually did the trick:

      1. Went back and made sure I really opened (extracted) the zipped WordPress folder and renamed it as “mytestsite” as instructed. The first time around I had opened it but it did not request a new folder name so I left it named as “wordpress.”

      2. When opening the wp-config-sample file in Notepad as instructed (it first opened in Dreamweaver by default and editing it there did not work for me), I needed to rename it carefully with the .php at the end of the file name and save it as “all files” and not as a .txt file in the Notepad dropdown menu when saving it. The first time I unintentionally saved it as a .txt file, despite putting a .php suffix, and that did not work.

      3. After all that, in the browser I entered http://localhost/mytestsite/ and it worked, just clicked on the WordPress folder that appeared for installation.

      These two changes allowed it to work for me, hope it helps others.

      1. Julianna

        Lee, I’ve been struggling for a few hours and I tried both the things you suggested and it let me move forward to the next step finally. Thank you!

        1. Nick

          Yeah that was just a unintentional mistake on the author’s part I think. He meant to say to name the database the same as your site’s name, and the directory holding all your wordpress app’s files in htdocs.

          On hosting, the wordpress files would typically all go into your FTP account’s domain or subdomain name in the root or in the folder “public_html”.

          1. ullekh niraula

            thank u so much nick. ur a life saver

      2. Dean

        Lee, you’re a star. I was experiencing the same problem, and found that my wp-config file was saving as a .txt file rather than a php. Saving as ‘all files’ fixed it for me.

        Cheers mate.

  46. shridip

    Thank you TOM

    1. Tom Ewer


      You’re welcome!

  47. KarSho

    Simply thanks Bro…

    1. Tom

      You’re welcome!

  48. Jan

    Great easy steps to follow! Worked straight from the start!! Now I can see if WordPress is something for me.

    1. Tom

      That’s great Jan!

  49. tony

    Once i build a wp site locally how can i install these files on a established site?

    I’m assuming ftp the files to the site hosted online.

    But exaxtly what files should i copy to the host and exactly where?

    I can try and figure this out myself but i would like to get it right the first time.

    Thanks for a great tut!

    1. Tom Ewer


      I’m afraid that’s an entirely different tutorial Tony – Google should be able to help you on that front 🙂

  50. Jay

    Bravo! Many thanks for this excellent tutorial!

    1. Tom

      You’re welcome Jay!

  51. Ties

    Just followed all the steps in this tutorial and everything went well untill I started the WP instalment. The screen froze halfway but when I refreshed it said WP was already installed.

    I tried to login using the username and pasword I created but it won’t log in. Now when I go to http://localhost/mytestsite/wordpress/ it just tells me “nothing found”

    Had the bright idea to unstall WP and reinstal but in the control panel under programs I can’t find WP to even uninstall.

    What should I do? Thanks a lot

    1. Tom Ewer


      Hello Ties,

      I’m afraid I have no answer for you – the process should work. I’d advise that you submit your question to the forums.



      1. Ties

        Thanks Tom,

        Ill do that!

  52. Tanka

    Thanks a lot.
    Please suggest how to add open conference system ( to the website.

  53. Donal

    I did my install, but I can’t find where on the disk the installation went to. Can you tell me how can I find this out. (I’ve looked in the xampp/htdocs folder for a wordpress folder, but there aint any 🙁

    1. Joan-FindingLeads4U

      Hi and thanks for article, Looking for some answers of which I may have found it here with the wp-config file so thanks!

    2. Joan-FindingLeads4U

      Donal, take a look at this video it may help you over the hurdles.

      1. Donal

        HI Joan, that video got my wheels turning once again. Many thanks.

  54. Payilagam

    Excellent buddy! My long term dream comes true today! Your blog helped me a lot to create my own website. thanks a ton.

    1. Tom Ewer


      Thanks! 🙂

  55. Chetan Sureja

    using your provided information i able to install WordPress on xampp and it is working good

    thank you so much

    1. Tom Ewer


      Great Chetan! Glad it worked 🙂

  56. Andrea

    Hi Tom,
    I’m almost finished setting up my test site, but having some troubles…i got stuck on this part:
    Open up a fresh browser tab and navigate to “http://localhost/yoursitename/”

    I typed in “dickeybub” for my site name and nothing happens….can you help me figure out what my site name should be? I know this sounds like a silly questions, my i’m not very “configuration” savvy. If you can give me as much detail as possible on where i can find my wordpress website’s directory, that would be great. Thanks so much

    1. Andrea

      Tom, nevermind, i figured it out. However, can you tell me how i can transfer my LIVE website to my TEST site?

      1. Chris

        Hi Andrea,
        There is an easy to use free plugin for wordpress that will allow you to zip your files up export a dump of your data base, and give you an installer file, skipping the whole creating a new version of wordpress on your local host, Just go to your live site install this plugin, search for “duplicator” by LifeInTheGrid (without quotes) and create a backup, download the installer file and the zip file, go to your download directory and copy it to your folder in xampp localhost, create a fresh database in phpadmin, making write down name or if you have already created one, edit via phpadmin, and check all and select drop, to remove all tables, (important needs to be a fresh file). Then double click on the installer.php file and follow the settings, making sure you specify localhost, database name, database user and password, you have an option in this installer, to disable plugins (incase you are running security plugins) and create brand new users. Also if your live site has limited security make sure to go and delete the duplication just made, because with the information in your database dump if someone was to download that, they could easily break into your admin area. Also If your site is using ssl, you can create an ssl to use in xampp, by typing https://localhost/ hope this answers your question.

    2. Payilagam

      Hi Andrea,
      you should mention your folder name (under htdocs, which is ‘wordpress’ by default). I hope you missed that.

  57. Pawas Gupta

    Hi Tom,

    Thanks to you I finally got it right. Your post was so easy to understand for a non technical guy like me. I really appreciate your contribution to the community.

    1. Tom Ewer


      Glad to hear it Pawas!

  58. michael

    hey tom, your solution looks brilliant. one challenge– i’m on a chromebook, so i don’t have an OS, per se. any ideas?

    1. Tom Ewer


      Afraid not Michael! I have no idea how you’d do something like this on the Chrome OS…


    Great job. THANK YOU !

    1. Tom Ewer


      My pleasure 🙂

  60. Imran Khan

    Great Job done Tom!!!,
    It’s been almost 10 days i was struggling with Apache, Mysql and php installation and configuration. Though I installed and configured Apache & Mysql flawlessly but when it was php turn, i failed badly with interfacing…Finally decided to go with your instruction and it worked charmingly within few minutes….Great work…keep it up…Continue the Good work…expect more from you…:)

    1. Tom Ewer


      Thanks for your comments Imran! Glad it helped 🙂

  61. Chris

    A word of thanks to people like Tom who go the extra mile to make things easier for those that follow.

    Let me admit I would have made it even easier for myself if I literally followed Tom’s guidelines. I found them (in retrospect) accurate and helpful.


    1. Tom Ewer


      Thanks Chris 🙂 glad to be of some help!

  62. Allan Collins

    Hi Tom. I have found another topic in your blog explaining how to download an existing site. I will have a go using your directions there. I am sure they are just as good as what I have used already and will get there. Once again – thanks a lot. allan

    1. Tom Ewer


      No worries Allan, let us know how you get on!

      1. Allan Collins

        Hi Tom. Got quite a long way (in spite of interruptions – I am in South Africa and there is a lot going on here right now – very sad though). I got to the bit where I downloaded the SQL database from my site – it did a screendump of a big text file that didn’t mean much to me. But the hardrive was running for a long time so something was happening. I don’t know where it has saved the databas, or what it looks like. It was called CLDBHOST_mxxxxxxx on the server. I was able to get to it there with my username and password. Any clues would help please. Thanks allan

        1. Allan Collins

          Hi Tom. Got a bit further and almost there. Followed your directions very well. Just get the following errors …”Warning: require_once(C:\xampp\htdocs\Kwamadala/wp-load.php): failed to open stream: No such file or directory in C:\xampp\htdocs\Kwamadala\wp-blog-header.php on line 12

          Fatal error: require_once(): Failed opening required ‘C:\xampp\htdocs\Kwamadala/wp-load.php’ (include_path=’.;C:\xampp\php\PEAR’) in C:\xampp\htdocs\Kwamadala\wp-blog-header.php on line 12

          Please help. Thanks allan.

          1. Allan Collins

            Hi Tom. I worked out from the error message that there were some files missing so FTP’d everything down again and established they are all there. New problem. Trying to import the exported database using phpMyAdmin but it is too big. 2048 allowed – it is 2236. I looked at FAQ and it suggests a few workarounds. Maybe you got a good one to suggest Thanks again allan

      2. andi

        Hi Tom,

        On the fourth step you shared four changes that need to be made; I am not clear on exactly what those changes need to be … one it appears has to do with mytestsite, followed by root and then two others which follow.

        My question is what are the exact changes that need to be made?

        I did understand with the mytestsite that you suggested that would be changed to whatever the name of the site is please confirm whether that was what you were saying and then with the following three changes what changes need to be made there exactly?



      3. Allan Collins

        Hi Tom. Max size problem sorted – used PhpMyAdmin on the server rather than the one that comes with Xampp. That version allowed 8192. New problem. The import starts, but I now get an error .. “Error SQL query:

        — Dumping data for table `pageflipbook`

        INSERT INTO `pageflipbook` ( `ID` , `adresse` , `lien` , `detachable` , `is_double` , `is_preloaded` , `categorie` , `position` )
        VALUES ( 1, ‘XQVOnM7.jpg’, ‘http://’, 0, 0, 0, ”, 0 ) , ( 2, ‘JebYZOT.jpg’, ‘http://’, 0, 1, 0, ”, 1 ) , ( 3, ‘JOHMdaL.jpg’, ‘http://’, 0, 1, 0, ”, 2 ) , ( 4, ‘hrSaiEr.jpg’, ‘http://’, 0, 1, 0, ”, 3 ) , ( 5, ‘e69prPn.jpg’, ‘http://’, 0, 1, 0, ”, 4 ) ,( 6, ‘b2VvsMh.jpg’, ‘http://’, 0, 1, 0, ”, 5 ) , ( 7, ‘bkZaTxN.jpg’, ‘http://’, 0, 1, 0, ”, 6 ) , ( 8, ‘RWnM3aP.jpg’, ‘http://’, 0, 1, 0, ”, 7 ) , ( 9, ‘XIBmwEZ.jpg’, ‘http://’, 0, 0, 0, ”, 8 ) ;
        MySQL said:
        #1062 – Duplicate entry ‘1’ for key ‘PRIMARY’

        Any clues to a solution would help greatly. Thanks allan

      4. Allan Collins

        Hi Tom. Yep – it’s me again. I worked around the size problem by zipping the database and using phpMyAdmin in Xampp. I then made the changes to siteurl and home. Still don’t work – “Error establishing a database connection”. I have all the WordPress stuff in Xampp/htdocs/kwamadala. I really have no idea where the database is sitting. Could it be in the wrong folder? Hope you can help. tx allan

        1. Lena

          Did you get a response regarding database connection? I am also getting this error. Using Windows 8.

          1. Lena

            I finally figured out what the connection issue was. Allan if you go to your phpAdmin file, you should see a database called “test.” in your wp-config.php place this as the database name and leave the username and password sections empty. Make sure there are no spaces between the single quotes.

            Hope this help.

          2. Tom Ewer


            Thanks for your helpful input Lena!

      5. Allan Collins

        Hi Tom. You must be getting a bit sick & tired of me. I am there at last. Just kept plodding on (only way a 70 year old can do it!!). It is now working. I kept referring back to your other blog on downloading a site to a local machine. The “Flippingbook” plugin doesn’t work at localhost level – permanent error? I must now also work out how to get to wp-admin on the local site, but am sure I will get there. Thanks once again for all the invaluable tips and directions you give on your blog. Much appreciated. allan

  63. Allan Collins

    Hi Tom. Thanks a lot for very easy to follow directions. I got a long way down but am a bit stuck now. I have a WordPress site and want to copy that down to my local machine. I have downloaded the WordPress folder via FTP but can’t get to it and don’t know what changes I should make to the wp-config.php file and anything else I need to do. I am also not sure where I can find the database file on my site (unless it came down in the WordPress folder) to get it down into the correct folder on the local machine. Any pointers would be most welcome. Thanks Allan

  64. Hasan zahid

    Its really awesome. Detailed as much i wanted . Thanks Tom

    1. Tom Ewer


      Thanks Hasan!

  65. anthony.wells

    Not sure what to put in root,password,localhost in Section4. Help please new to this stuff!!!

  66. stephenmassam

    Awesome tutorial,great content


  67. Leo

    Excellent tutorial. I had it running without problems in about 15 minutes.
    Question: Is it possible to load an existing website? I can create a new one from scratch.

  68. Ratchaphol

    Hi Tom! Great post anyway!
    Did you finish the post abt how to transfer this local installed wordpress to live and online?


    1. Tom Ewer


      I’m working on it! 😉

      1. Your First Blog on Earth

        Thanks for reply! Im looking for it. I might refer this in my blog too 🙂

  69. Nate

    Gosh! I’ve been using WP since 2009 but never installed a local version as I was always scared for some reason. Setting up the server seemed complicated; but it isn’t.

    It took less than 5 minutes… which sounds a silly statement as I’ve long known about the famous 5 minute install. But that was just knowledge, I’ve now had a revelation!

    From now on I’ll be building local WP’s for all of my sites and doing development there rather than on the live site.

    Yes I do feel stupid for not doing this sooner. Thanks for the tutorial.


    1. Tom Ewer


      No problem Nate, glad to help!

  70. Deanos

    Brilliant tutorial! Many thanks!

    1. Tom Ewer


      No problem Deanos 🙂

  71. GAR

    This is BS…

    Error because skype is using the ports. Closed skype to make it work, but skype is a very common application which many people use.

    Please improve the tutorial teaching how to change the port its using.

    Thanks, this site helped me a lot, good quality 🙂

  72. Tom

    I am trying to build a site with a template. When I try to upload it, I get this:

    Warning: POST Content-Length of 25195004 bytes exceeds the limit of 8388608 bytes in Unknown on line 0
    Are you sure you want to do this?

    Is there a way to bump up the size limit?



  73. stephen

    Great article. But how do you upload the finished test site to a real domain? Do I have to install wordpress and Genesis framework on the new domain too? Or will it come along when I upload everything from my computer?

  74. Vikas

    I am only 3hrs old with WordPress and had terrible time finding a tutorial how to get this working locally. Your tutorial was great and within 1hr after finding your website link I was able to develop a dummy website using WordPress. Great work, thanks for sharing your knowledge.

  75. Ali Ashiq

    can you tell me please how to install xamp in windows 8! i am totally fedup and when i installed xamp it does not working

    1. Rik MIlls

      Check for IIS service running and turn off maybe a port 80 conflict

  76. Cheryl


    OMG, You made my day! 😀
    Thank you for your clear directions.

    I did have to go into Users once in phpMyAdmin, add a user and assign privileges for my site.

    If I remove root privileges, will that funk things up, or will it ‘plug’ a security hole?

    1. Tom Ewer


      No problem 🙂

      Not sure about root privileges to be honest…

      1. Love Quotes

        hey !! this is wonderful… thanks 🙂

  77. Javentira

    This is what I need :D.
    Installed XAMPP 3 days ago and until now I don’t know how to add my site to localhost.
    thank you for sharing this information 😀

  78. Cazaura


    Just wondering whether something like this can also be done on a flash drive – I’m sure I’ve seen that mentioned somewhere? Rgds.

    1. Tom Ewer


      I don’t see why not!

  79. Razer

    Thanks Tom. The tutorial was well written, concise and major helpful. I appreciate the effort.

  80. Steveorevo

    Not only is ServerPress easier (it is XAMPP only WordPress centric), but it also reads ManageWP backup archives. What good are backups if you can’t load and compare them in a few clicks?

    1. Keith Davis

      Hi Steve
      I’ve been looking at ServerPress, paid version.
      What happens after 12 months, do you have to pay again if you want support?

  81. Keith Davis

    Fabulous article.
    A question…
    When you create the database don’t you have to create a user and give them admin rights etc?

    Long time since I did it but I do recall having to set up a user with all privilages.

    1. Tom Ewer


      Not to the best of my knowledge Keith — I didn’t have to do it.

      1. Keith Davis

        Cheers Tom
        I distinctly remember setting all the privilages – maybe it’s changed.

  82. Cathy

    You left out a few steps. I kept getting prompts that were not in your instructions. Giving up and starting over.

  83. Charles Shields

    Didn’t work for me. This is 2nd tutorial I tried with Xampp. Neither worked. Have to find a local guy to come over and install for me. $100.

    1. Mini

      Lookup’s DesktopServer; it even opens up ManageWP archives instantly so that you can compare them, right on your desktop.

  84. brett_bumeter

    XAMPP totally drives me nuts, always has. I swear it is also a PC killer.

  85. Mike Smith

    Once you’ve created your local site you can use the duplicator plugin to back it up and upload it on to your hosting account. It’s free and available here

    The instructions are reasonably easy to follow.

  86. Kim Holman

    Wow…these directions are the bomb. I’ve hesitated to create a local copy of wordpress and thanks to you, it was so easy.

  87. Ponfe

    I’ve tried EasyPHP and XAMPP now, but in neither of them can I access to phpmyadmin. I cannot figure out why this problem persists. Any ideas?

    1. cyrusville

      Check that there are no port collisions with other applications. Often happens with skype..

  88. David G.

    Thank you so much!
    Easy, fast and accurate.

  89. vini

    thanks a lot for providing information on creating multiple offline websites. I was kinda stuck on this step for a while.

    1. Tom Ewer


      No problem 🙂

  90. cliclocal

    Great post, after you develop the site locally, whats the process for uploading it live

    1. Tom Ewer


      Good question, and one that deserves a post of its own 🙂

  91. Joel D Canfield

    Great googlymooglies. I’d forgotten how nice it is to have a local web server to dink with.

  92. Colin Crawford

    Confused with two comment forms on this tutorial. WebMatrix 2 is even easier as it downloads and installs WordPress for you and the local WordPress is put in the My Websites folder in the My Documents folder.

    Within WebMatrix you can view the files, db and edit them as well. So I’ve now looked into an alternative but I’ll be sticking with WebMatrix 2.

    Maybe Tom have a look at WebMatrix 2 and compare both with the pro’s and cons.

    1. Tom Ewer


      Yeah, the two comments forms is a funny one – we’re consolidating down to one for our upcoming redesign though, so the confusion won’t last for much longer 😉

      I’ve never heard of WebMatrix, but I will most certainly be taking a look now. Cheers!

    2. Colin Crawford

      It’s developed by Microsoft and you can install other popular Blogs,CMS, ecommerce and more….with ease well worth taking a look.

  93. egiova

    Personnaly I use Bitnami Wamp Stack (, because of its modular structure, it enables the installation of several “modular stacks”. For example: I installed WP, Joomla! and Drupal on my machine. It works just fine for me since six years.
    Did you hear from it? Xampp is just too restrictive to me, or I don’t know how to manage it.

    Godd tutorial anyway, thanks.

    1. Tom Ewer



      I’m afraid that I haven’t used Bitnami – I’ve never had a reason to. As far as I am aware, Xampp is in no way restrictive when it comes to creating local installations of WordPress (which is of course the point of this tutorial). I have 3 WordPress local blogs all running on Xampp with no issues.



Leave a Reply

Your email address will not be published. Required fields are marked *

Over 65,000 WordPress professionals are already using ManageWP

Add as many websites as you want for free, no credit card required. Sign up and start saving time!

Have questions? Get in touch!

Over 65,000 WordPress professionals are already using ManageWP

Add as many websites as you want for free, no credit card required. Sign up and start saving time!

Have questions? Get in touch!

Over 65,000 WordPress professionals are already using ManageWP

Add as many websites as you want for free, no credit card required. Sign up and start saving time!

Have questions? Get in touch!

Over 65,000 WordPress professionals are already using ManageWP

Add as many websites as you want for free, no credit card required. Sign up and start saving time!

Have questions? Get in touch!