How to install Laravel on Windows using WAMP
- Install WAMP first.
I leave everything to default.
- Enable OpenSSL and all required extensions in PHP.ini
After you installed WAMP, you need to do this. This is how you make sure OpenSSL is enabled:
On your right hand side of your taskbar, click WAMP and then choose PHP.ini.
And then find php_openssl, and then remove the semicolon in front of php_openssl.
And then, save. Close that file and now go to wamp manager again, and now enable OpenSSL there just to be safe.
After you do that, restart Wamp.
- Install Composer
Go to https://getcomposer.org/ and download Windows installer.
The setup will ask for your PHP. if you install your WAMP in default setting, it will usually end up in C:\wamp\bin\php\php5.4.12.
If your installation is successful, by running composer on command prompt, you will see all kinds of info just by running that command.
If you can see it, that means your Composer installation is complete. Let’s move to the next one.
- Make sure that your htppd.conf includes httpd-vhosts.conf
Now let’s make sure that your htppd.conf also includes httpd-vhosts.conf. This is beneficial if you want to make a pretty URL just like this one:
Instead of writing up localhost/mylaravel, it would be “nicer” to have that pretty URL, right?
Anyway, let’s go on.
Go to C:\wamp\bin\apache\Apache2.4.4\conf and then open up httpd.conf.
After that, search for httpd-vhosts.conf and make sure that there is no ‘#’ (pound sign) in front of it. Save. After that restart Wamp just to be safe.
Now let’s begin the fun part: installing Laravel.
- Install Laravel in specified folder
You usually want to install your Laravel in your www folder. (Obviously!)
So open up your command prompt, and then change directory to your WWW folder inside your wamp. For me it will be: C:\wamp\www
To change directory, just type cd c:\wamp\www
Basically you are changing folder to your www folder.
And then, you can install Laravel. Just use this in your command prompt:
composer create-project laravel/laravel your-project-name –prefer-dist
And then hit enter.
Just wait a while until it is finished downloading and installing.
- Enable Laravel installer
If you want to use Laravel Installer, you have to run this command in your command prompt first:
composer global require "laravel/installer"
Wait until… everything finished.
- Create Virtual Host
Now let’s create your pretty URL. You have to go to C:\wamp\bin\apache\Apache2.4.4\conf\extra and then open up httpd-vhosts.conf.
After that, you just need to paste the following and change your laravel folder to appropriate ones.
<VirtualHost *:80>
DocumentRoot “c:/wamp/www/mylaravel/public”
ServerName laravel.dev
</VirtualHost>
In my case, I used mylaravel for my laravel installation. You have to change it to something else. For server name, you can change it to whatever you want. In my case, I am using laravel.dev. (You don’t want to use google.com because if you do, you won’t be able to open up Google).
Obviously, you have to save and then restart your WAMP again.
- Update Windows Hosts file
After you have changed your virtual host, you need to change your host file.
Go to C:\Windows\System32\drivers\etc and copy hosts and paste it on your Desktop. And click on the host file you have pasted on your Desktop. Open that up using Notepad.
Put this in that host file:
127.0.0.1 laravel.dev
Change laravel.dev into what you already decided in your virtual host file. For me, mine will be laravel.dev.
Copy the one that you modified just now and put it back into your C:\Windows\System32\drivers\etc folder.
You’re done!
Modified from this source: http://copygrammer.com/how-to-install-laravel-on-windows/ (my blog)
composer create-project
command to install a fresh copy of Laravel and that took quite long to complete. IMO with the Laravel Installer it's a breeze. Did you try out the Installer yourself? It downloads the current release and just copies the files to the new dir each time you run the Installer command, instead of downloading Laravel over and over again. As Laravel has become more stable now, updates don't bubble up as fast as before, making this method work in the long run. – Markus Hofmann