Вы должны изменить Документ Root на Apache, чтобы он указывал на папку publi c, и, следовательно, URL будет указывать на папку publi c без ее присутствия в вашем URL.
Вот пример VirtualHost Apache, позволяющий вам прослушать URL-адрес website.lo c и указать папку publi c, связанную с этим сайтом (она может быть неполной):
<VirtualHost *:80>
DocumentRoot "/path/to/website/public/"
ServerName webiste.loc
DirectoryIndex index.php
ErrorLog "/var/log/httpd/error_log"
CustomLog "/var/log/httpd/access_log" common
<Directory "/path/to/website/public/">
AllowOverride none
Order allow,deny
Allow from all
<IfModule mod_rewrite.c>
Options -MultiViews
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>
</Directory>
</VirtualHost>
Если это не работает, можете ли вы дать нам конфигурацию вашего VirtualHost на Apache? Остерегайтесь конфиденциальной информации, которая может присутствовать.