Apache
For Apache, file name may be in sites-enabled folder, for example /etc/apache2/sites-enabled/000-default.conf or, for MAMP, it would be /Applications/MAMP/conf/apache/extra/httpd-vhosts.conf where you need this:
<VirtualHost *:80> ServerAdmin povilas@laraveldaily.com DocumentRoot "/Applications/MAMP/htdocs/project1/public" ServerName project1.test </VirtualHost>
See that /public part at the end of DocumentRoot? That’s exactly how to point your domain to that public folder.
Notice: after editing that configuration file, don’t forget to restart Apache server.
Nginx
For Nginx server, configuration file will be somewhere like /etc/nginx/sites-enabled/project1.test, with this code:
server { listen 80; listen [::]:80; . . . root /var/www/html/project1/public; index index.php index.html index.htm index.nginx-debian.html; server_name example.com www.example.com; location / { try_files $uri $uri/ /index.php?$query_string; } . . . }
In this case, you need to look at root variable and put /public at the end of it. Also, restart the server.
Don’t forget .env file
Another thing I see often is that people leave .env file with default values after installation, except for changing DB credentials.
What you need to set up is APP_URL variable.
In your case, it should be your domain name with full prefix http:// or https://.
APP_URL=http://project1.test