EasyWP WordPress Installer – Cause There Ain’t No Such Thing As “Too Easy”

Easy Street here we come!Let’s face it… generally speaking, installing WordPress is not exactly an arduous task. It’s designed to be relatively easy, allowing pretty much anyone to set up a blog of their own, regardless of their technical expertise. For the most part, WordPress succeeds at this. However, if you are the type of person who sets up blogs often, especially considering the fact that they all have to be updated every time a new security hole in WordPress is discovered, and if some of those blogs are on hosts that might have some issues with latency (small lags just before each connection), then setting up WordPress can sometimes be a little bit of a pain. WordPress 2.5.1, for instance, has 515 files in it that have to be uploaded in order to install it. Sure, if you have shell access and know how to use it, then you can just upload the zip file and unzip it on the server. However, if you don’t have that (which is common with most shared hosting accounts), and there is just a couple of seconds lag before each files starts transferring, then that means that uploading the full package can take 20 minutes or more for each blog.

Me? I’m just not that patient.

Therefore I have written a WordPress Installer script, named EasyWP, that removes that hassle completely. Simply download and unzip EasyWP.zip (download link EasyWP). Upload easywp.php (a single file that is a mere 8KB) to the folder where you want to install your blog. Any directory will do, including the root directory, as long as WordPress isn’t already installed in it (this script is designed to do clean installs only) and PHP can write to that directory (either through setting the permissions, or through PHPSuExec running on your server). Next, visit the page wherever you uploaded it to (ie. http://www.yourserver.com/blog/easywp.php), fill out the form, and hit the “Go!” button.

EasyWP will download the latest version of WordPress, unzip it into the directory where you want to host your blog, and modify your configuration file based on the information you entered into the form. Then it tests your database connection. If that fails, it gives you a chance to re-edit the info you entered, so if you made a mistake there is no need to edit and re-upload the config file separately
(just like when you install WordPress without the script, you do have to create the database and user beforehand). After that it takes you to the normal WordPress setup page, where you finish the process.

That’s it. šŸ˜€

To recap: you can now upload and configure an entire brand new WordPress installation in under 30 seconds. Feedback and suggestions are of course welcome.

Be Sociable, Share!

34 thoughts on “EasyWP WordPress Installer – Cause There Ain’t No Such Thing As “Too Easy”

  1. @Brandon – that’s true, except that not all hosts have Fantastico, and for those that do not all keep them up to date with the latest WordPress versions. Also, this script is especially helpful in cases where you have to clean an infected installation (which I plan on blogging about shortly). I know that WP Automatic Upgrade should not be used in cases like that, and I would guess that Fantastico would have some of the same shortcomings. Can Fantastico install over a pre-existing WP install that wasn’t originally installed by it?

  2. Really cool script except I use a Windows host and it doesn’t seem to be working there. I get the error

    Warning: exec() [function.exec.php]: Unable to fork [tar xvfz wordpress-2.6.1.tar.gz] in D:\rallyofkerala.com\wwwroot\easywp.php on line 111

  3. I was new to Wpress and didn’t know 1 thing.

    I read through the tutorials at WordPress.org and lo and behold I installed it all myself !!!!!

    Try that first then come back to this site.

    The reason I say this is because you learn a lot by doing, and if you have to make changes later you have the power to do so.

  4. I hope you have a screenshot of the actual installer before we download and run this script. But I’ll try this one now.

    Thanks in advance and I hope it work.

  5. Usually I used net2ftp to unzip WordPress files on my host.

    Before I tried this script, I was a bit worried about the “owner” of the unzipped files and folders
    I tried some scripts that unzip and install automatically similar to this (not WordPress-relate), the owner of the file isn’t my ftp username, and that cause me some troble when I want to move/delete/rename the files

    But easyWP has no problem about that issue
    I tried it and wow! installing WordPress could not be easier! I’m very impressed. Thank you for the great script šŸ˜€

  6. I get the following message: “It does not appear that the current directory is writable.
    Please correct and re-run this script.”
    I have NO idea what to do next. šŸ™‚

  7. Awesome plugin man! I love it! What a quick down of the tar.gz file and uncompression on good servers, almost instant. It even deletes the file after its done. Great job. Tweeted this šŸ™‚ twitter.com/vincenttobiaz

  8. Hello,

    I’m a newbie in using WP. My site has been obviously attacked 5 days ago and until now it’s not fixed. Have asked around with the tech support at my host but it seems their recommendations are not working. I just want my site back but I don’t know where to start troubleshooting. I was using WP 2.8.3 when my site just disappeared and I could no longer login in the WP-admnin.php. No error messages whatsoever. Any help and ideas what will be my next step would be appreciated. More power!

  9. My problem is what SE7EN was talking about. The installer uses PHP, which is run through apache, which has a different user (called “nobody” on my server) rights than me. So although the script works, afterwards, I can’t change any of the files since they now all belong to the that different user.

    I can SSH in and manually change them from root, but that is not supposed to necessary. If I’m going to be using SSH, I might as well just use the wget command to download it. The whole point is to not use SSH.

    I was thinking that maybe I could use invoke a shell script that would download WordPress and set it up, through php, and just edit your easywp.php, but I’m not sure if this would remain being that “nobody” user. Also, I would have to look up how to write shell scripts, which I don’t as of right now.

    I also thought, since I saw it on another install script, http://wpquickinstall.com , that to use FTP and just ask for FTP to download it, then it would use my username and it would probably work. Unfortunately, this script fails right in the beginning with the FTP part, and the code is encrypted so I’m not sure how to do this. This I believe is similar to how WordPress asks you to enter FTP info when you want to update your plugins (on some servers).

    Any help would be appreciated, maybe an update to use FTP? Thanks.

  10. I can SSH in and manually change them from root, but that is not supposed to necessary. If Iā€™m going to be using SSH, I might as well just use the wget command to download it. The whole point is to not use SSH.

    Actually the point of this script is for people who do not have ssh access. Also, you’re not on a shared hosting environment, are you? If Apache is running as nobody, and php is running under that same user (as opposed to using some suexec solution) then I am pretty sure that would mean that all users would have access to every other users web directory via scripts.

    EasyPHP already does what you suggest, by the way. It is a wrapper for shell commands, including wget and tar, that install WordPress for you very similarly to the way you would do it via ssh. I am not sure why you would not have permissions to the files afterwards.

  11. You are so awesome! I used your easywp script and it did exactly what you said. Thank you so much for this and your cleaning from hacks article!

  12. Awesome man.. thanks thanks thankss……. i wanted to reinstall wordpress i do not have access to cpanel.. ur script helped me a lot lot lott…. i will preserve it lifetime…..

Leave a Comment

*