When I do a new installation of the Laravel project on my local host, I cut the .htaccess file from the shared directory and paste (replace) it into the root of the Laravel directory.
And I will rename the server.php file to the root of the Laravel directory on index.php
Thus, I eliminate the need to enter the word public from the website URL.
Now in public_html I insert all the files and folders from the Laravel directory. That way, when you enter your domain name, your site loads directly without showing your public / index.php inside the URL.
source share