HOSTING Frissítve:
Laravel almappában shared hostingon: tiszta URL-ek .htaccess-szel
Ha a projekt a public_html/projekt alatt van, de a domain gyökeréből kell futnia, az [END] flaggel elkerülhető, hogy a belső /projekt/public útvonal kiszivárogjon az URL-be.
A public_html/.htaccess közvetlenül a projekt/public mappára mutasson.
RewriteEngine On
# Régi, Laravel előtti útvonalak (pl. /site/...) külön kezelve
RewriteRule ^site/(.*)$ projekt/public/site/$1 [END,QSA]
# Létező statikus fájl a public-ban
RewriteCond %{DOCUMENT_ROOT}/projekt/public/$1 -f
RewriteRule ^(.+)$ projekt/public/$1 [END]
# Minden más a Laravel front controllerhez
RewriteRule ^ projekt/public/index.php [END,QSA]
- Az
[END]megakadályozza, hogy az Apache újra feldolgozza a belső rewrite-ot (az[L]ezt nem garantálja). - Könyvtáraknál előbb a trailing slash-es átirányítás történjen meg, különben az Apache kiszivárogtathatja a belső útvonalat.
Helyes átirányítás: Location: /site/day/
Hibás: Location: /projekt/public/site/day/
Egyszerűbb, régebbi változat (működik, de a fenti a tisztább):
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/projekt/public
RewriteRule ^(.*)$ projekt/public/$1 [L]