Wednesday, 3 July 2019

Caching web routes with forced url in laravel

I'm running a laravel project behind a reversed proxy which is why I need to force the root url and scheme:

URL::forceRootUrl($proxy_url);
URL::forceScheme($proxy_schema);

I've added this to the top of my /routes/web.php and it's working fine until I run:

php artisan optimize

It caches the routes in /bootstrap/cache without the forced url and scheme, so now all my urls are pointing to the wrong root url.

I've tried to move the code to /Providers/AppServiceProvider.php (both register and boot) in order to make it take effect when caching the routes but no luck.

I have to manually delete the routes cache file in /bootstrap/cache to make my routes work again.

Have do I make it take effect when caching the routes?

Edit: I have also tried to create a global middleware where I do the force url and schema. Again it works fine before caching the routes, but when running php artisan optimize the routes are once again incorrect.



from Caching web routes with forced url in laravel

No comments:

Post a Comment