I created my app on Homestead. Everything works fine there. But when I moved app to an external server I always have to include index.php after root path.
Assuming you already point your web server to public directory, your problem should be in your Apache conf.
Laravel comes out with
public/.htaccess but you need to enable the mod rewrite in Apache for it to work
sudo a2enmod rewrite
.htaccess to work, you need to set the
AllowOveride directive in Apache conf
<Directory "/var/www/public"> AllowOverride All </Directory>