mirror of
https://github.com/flarum/core.git
synced 2025-10-12 15:34:26 +02:00
Fixes wrong IP address when using a reverse proxy (#2236)
Added reverse proxy support to preserve forwarded IPs
This commit is contained in:
@@ -25,6 +25,7 @@ use Flarum\Http\RouteHandlerFactory;
|
||||
use Flarum\Http\UrlGenerator;
|
||||
use Flarum\Locale\LocaleManager;
|
||||
use Flarum\Settings\Event\Saved;
|
||||
use Illuminate\Support\Arr;
|
||||
use Laminas\Stratigility\MiddlewarePipe;
|
||||
|
||||
class AdminServiceProvider extends AbstractServiceProvider
|
||||
@@ -48,6 +49,7 @@ class AdminServiceProvider extends AbstractServiceProvider
|
||||
$this->app->singleton('flarum.admin.middleware', function () {
|
||||
return [
|
||||
'flarum.admin.error_handler',
|
||||
'flarum.admin.proxy_middleware',
|
||||
HttpMiddleware\ParseJsonBody::class,
|
||||
HttpMiddleware\StartSession::class,
|
||||
HttpMiddleware\RememberFromCookie::class,
|
||||
@@ -66,6 +68,15 @@ class AdminServiceProvider extends AbstractServiceProvider
|
||||
);
|
||||
});
|
||||
|
||||
$this->app->bind('flarum.admin.proxy_middleware', function () {
|
||||
$config = $this->app->make('flarum.config');
|
||||
|
||||
return new HttpMiddleware\ProxyAddress(
|
||||
Arr::get($config, 'reverse_proxy.enabled', false),
|
||||
Arr::get($config, 'reverse_proxy.allowed', ['127.0.0.1'])
|
||||
);
|
||||
});
|
||||
|
||||
$this->app->singleton('flarum.admin.handler', function () {
|
||||
$pipe = new MiddlewarePipe;
|
||||
|
||||
|
Reference in New Issue
Block a user