Placid
Placid

Reputation: 1448

Serve Laravel app with Apache (wampserver) to access from other computers in same LAN

I need to access my Laravel app that is served with Apache (wampserver) from other computers in the same LAN.

OS: Windows 8.1
Wampserver version: 3.0.6
Apache version: 2.4.23

I can access my app from other computers by the following URL:

http://192.168.12.13/scms/public/

The following URLs also work:

http://192.168.12.13/scms/public/categories/create

But it does not work when I submit POST request from the above URL. It redirects to the following -

http://192.168.12.13/categories

And shows "Not Found". So, it does not work.

To solve the issue, I have setup virtual host for my app which works perfectly in my own computer. But I cannot access it from other computers.

My setup:

In file:

C:\wamp64\bin\apache\apache2.4.23\conf\httpd.conf

Added this line:

Listen 192.168.12.13:80

In file:

C:\wamp64\bin\apache\apache2.4.23\conf\extra\httpd-vhosts.conf

Full code:

# Virtual Hosts

# wamp
<VirtualHost *:80>
    DocumentRoot "C:\wamp64\www"
    ServerName localhost
</VirtualHost>

# scms
<VirtualHost *:80>
    DocumentRoot "C:\wamp64\www\scms\public"
    ServerName local.scms-ananta.com

    <Directory "C:\wamp64\www\scms\public">
        Options Indexes FollowSymLinks MultiViews
        AllowOverride all
        Require all granted
    </Directory>
</VirtualHost>

In file:

C:\Windows\System32\drivers\etc\hosts

Added the following lines:

127.0.0.1 local.scms-ananta.com
192.168.12.13 local.scms-ananta.com

With the above setup, I can perfectly work with my app using the following URL in my own computer:

http://local.scms-ananta.com

But I cannot access it from other computers on my network.

Kindly note, serving with php artisan serve will not serve my purpose. I need to serve it with Apache.

Any help is highly appreciated.

Upvotes: 0

Views: 960

Answers (1)

reza
reza

Reputation: 1507

First of all editing host file will not help you while accessing from other computer unless you also edit all of those PC's host file. So it would be best to access with IP.

Now problem with your configuration is that for serving/deploying laravel website in your server you have to put public folder as your document root. Follwoing is your configuration for localhost

# wamp
<VirtualHost *:80>
    DocumentRoot "C:\wamp64\www"
    ServerName localhost
</VirtualHost>

Change the documentroot to the following will solve your problem.

DocumentRoot "C:\wamp64\www\scms\public"

Upvotes: 1

Related Questions