Disable integrity hashes by default, allow enabling with environment
Cloudflare auto-minifies our minified code even more (wat), which leads to issues with the resource hash, and then nothing loads. This is less likely to lead to support requests now.
This commit is contained in:
parent
de9ec1eba6
commit
6ac12fc156
2 changed files with 45 additions and 33 deletions
|
@ -82,12 +82,24 @@ class AssetHashService
|
|||
*/
|
||||
public function css(string $resource): string
|
||||
{
|
||||
return '<link href="' . $this->url($resource) . '"
|
||||
rel="stylesheet preload"
|
||||
as="style"
|
||||
crossorigin="anonymous"
|
||||
integrity="' . $this->integrity($resource) . '"
|
||||
referrerpolicy="no-referrer">';
|
||||
$attributes = [
|
||||
'href' => $this->url($resource),
|
||||
'rel' => 'stylesheet preload',
|
||||
'as' => 'style',
|
||||
'crossorigin' => 'anonymous',
|
||||
'referrerpolicy' => 'no-referrer',
|
||||
];
|
||||
|
||||
if (config('pterodactyl.assets.use_hash')) {
|
||||
$attributes['integrity'] = $this->integrity($resource);
|
||||
}
|
||||
|
||||
$output = '<link';
|
||||
foreach ($attributes as $key => $value) {
|
||||
$output .= " $key=\"$value\"";
|
||||
}
|
||||
|
||||
return $output . '>';
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -100,9 +112,21 @@ class AssetHashService
|
|||
*/
|
||||
public function js(string $resource): string
|
||||
{
|
||||
return '<script src="' . $this->url($resource) . '"
|
||||
integrity="' . $this->integrity($resource) . '"
|
||||
crossorigin="anonymous"></script>';
|
||||
$attributes = [
|
||||
'src' => $this->url($resource),
|
||||
'crossorigin' => 'anonymous',
|
||||
];
|
||||
|
||||
if (config('pterodactyl.assets.use_hash')) {
|
||||
$attributes['integrity'] = $this->integrity($resource);
|
||||
}
|
||||
|
||||
$output = '<script';
|
||||
foreach ($attributes as $key => $value) {
|
||||
$output .= " $key=\"$value\"";
|
||||
}
|
||||
|
||||
return $output . '></script>';
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -10,7 +10,7 @@ return [
|
|||
| setup on the panel. When set to true, configurations stored in the
|
||||
| database will not be applied.
|
||||
*/
|
||||
'load_environment_only' => (bool) env('APP_ENVIRONMENT_ONLY', false),
|
||||
'load_environment_only' => (bool)env('APP_ENVIRONMENT_ONLY', false),
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
|
@ -102,29 +102,6 @@ return [
|
|||
'high' => env('QUEUE_HIGH', 'high'),
|
||||
],
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Console Configuration
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| Configure the speed at which data is rendered to the console.
|
||||
*/
|
||||
'console' => [
|
||||
'count' => env('CONSOLE_PUSH_COUNT', 10),
|
||||
'frequency' => env('CONSOLE_PUSH_FREQ', 200),
|
||||
],
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Daemon Connection Details
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| Configuration for support of the new Golang based daemon.
|
||||
*/
|
||||
'daemon' => [
|
||||
'use_new_daemon' => (bool) env('APP_USE_NEW_DAEMON', false),
|
||||
],
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Task Timers
|
||||
|
@ -212,4 +189,15 @@ return [
|
|||
'environment_variables' => [
|
||||
'P_SERVER_ALLOCATION_LIMIT' => 'allocation_limit',
|
||||
],
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Asset Verification
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| This section controls the output format for JS & CSS assets.
|
||||
*/
|
||||
'assets' => [
|
||||
'use_hash' => env('PTERODACTYL_USE_ASSET_HASH', false),
|
||||
],
|
||||
];
|
||||
|
|
Loading…
Reference in a new issue