mirror of
https://github.com/pterodactyl/documentation.git
synced 2025-12-10 10:44:43 -06:00
100 lines
29 KiB
HTML
100 lines
29 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en-US">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta name="viewport" content="width=device-width,initial-scale=1">
|
|
<title>Troubleshooting | Pterodactyl</title>
|
|
<meta name="generator" content="VuePress 1.8.2">
|
|
<link rel="apple-touch-icon" sizes="180x180" href="/favicons/apple-touch-icon.png">
|
|
<link rel="icon" type="image/png" href="/favicons/favicon-32x32.png" sizes="32x32">
|
|
<link rel="icon" type="image/png" href="/favicons/favicon-16x16.png" sizes="16x16">
|
|
<link rel="mask-icon" href="/favicons/safari-pinned-tab.svg" color="#0e4688">
|
|
<link rel="manifest" href="/favicons/site.webmanifest">
|
|
<link rel="shortcut icon" href="/favicons/favicon.ico">
|
|
<meta name="description" content="Pterodactyl is an open-source game server management panel built with PHP 7, React, and Go. Designed with security in mind, Pterodactyl runs all game servers in isolated Docker containers while exposing a beautiful and intuitive UI to end users.">
|
|
<meta name="msapplication-config" content="/favicons/browserconfig.xml">
|
|
<meta name="theme-color" content="#0e4688">
|
|
|
|
<link rel="preload" href="/assets/css/0.styles.b4cb0fef.css" as="style"><link rel="preload" href="/assets/js/app.3e4dfcc7.js" as="script"><link rel="preload" href="/assets/js/4.bff5ff58.js" as="script"><link rel="preload" href="/assets/js/1.79a56ae5.js" as="script"><link rel="preload" href="/assets/js/61.c644eb6e.js" as="script"><link rel="prefetch" href="/assets/js/10.27cec751.js"><link rel="prefetch" href="/assets/js/11.27ba30b0.js"><link rel="prefetch" href="/assets/js/12.2e01246c.js"><link rel="prefetch" href="/assets/js/13.bd04c4ec.js"><link rel="prefetch" href="/assets/js/14.f2be742e.js"><link rel="prefetch" href="/assets/js/15.a6802091.js"><link rel="prefetch" href="/assets/js/16.f2dea920.js"><link rel="prefetch" href="/assets/js/17.e3b378b0.js"><link rel="prefetch" href="/assets/js/18.fcb158a9.js"><link rel="prefetch" href="/assets/js/19.74a2bca2.js"><link rel="prefetch" href="/assets/js/2.21e1a937.js"><link rel="prefetch" href="/assets/js/20.a31cd600.js"><link rel="prefetch" href="/assets/js/21.986dab58.js"><link rel="prefetch" href="/assets/js/22.f3d4c4d2.js"><link rel="prefetch" href="/assets/js/23.ab477db3.js"><link rel="prefetch" href="/assets/js/24.3db401dc.js"><link rel="prefetch" href="/assets/js/25.fb19183c.js"><link rel="prefetch" href="/assets/js/26.199e42e5.js"><link rel="prefetch" href="/assets/js/27.53b2955f.js"><link rel="prefetch" href="/assets/js/28.b1cca863.js"><link rel="prefetch" href="/assets/js/29.c234f3e0.js"><link rel="prefetch" href="/assets/js/30.61a90133.js"><link rel="prefetch" href="/assets/js/31.6cbb938e.js"><link rel="prefetch" href="/assets/js/32.7effab83.js"><link rel="prefetch" href="/assets/js/33.5cb72a20.js"><link rel="prefetch" href="/assets/js/34.f044669f.js"><link rel="prefetch" href="/assets/js/35.6b4fc97c.js"><link rel="prefetch" href="/assets/js/36.33b7916b.js"><link rel="prefetch" href="/assets/js/37.90e7633c.js"><link rel="prefetch" href="/assets/js/38.46b66006.js"><link rel="prefetch" href="/assets/js/39.a7036ff5.js"><link rel="prefetch" href="/assets/js/40.38884d65.js"><link rel="prefetch" href="/assets/js/41.8357cc2d.js"><link rel="prefetch" href="/assets/js/42.96d1acb1.js"><link rel="prefetch" href="/assets/js/43.9fd714d5.js"><link rel="prefetch" href="/assets/js/44.5250ac95.js"><link rel="prefetch" href="/assets/js/45.3ebbab0e.js"><link rel="prefetch" href="/assets/js/46.a3168226.js"><link rel="prefetch" href="/assets/js/47.7a0c0c49.js"><link rel="prefetch" href="/assets/js/48.8b4df094.js"><link rel="prefetch" href="/assets/js/49.1e699f40.js"><link rel="prefetch" href="/assets/js/5.407df260.js"><link rel="prefetch" href="/assets/js/50.fb545b0b.js"><link rel="prefetch" href="/assets/js/51.8bf819d3.js"><link rel="prefetch" href="/assets/js/52.c0fa38e2.js"><link rel="prefetch" href="/assets/js/53.acaa8c4b.js"><link rel="prefetch" href="/assets/js/54.01f718b6.js"><link rel="prefetch" href="/assets/js/55.0c83194a.js"><link rel="prefetch" href="/assets/js/56.488f03fe.js"><link rel="prefetch" href="/assets/js/57.6cdf7d48.js"><link rel="prefetch" href="/assets/js/58.139108d1.js"><link rel="prefetch" href="/assets/js/59.2de63e9e.js"><link rel="prefetch" href="/assets/js/6.8999fd8a.js"><link rel="prefetch" href="/assets/js/60.dabbb249.js"><link rel="prefetch" href="/assets/js/62.6d624b0b.js"><link rel="prefetch" href="/assets/js/63.08f06847.js"><link rel="prefetch" href="/assets/js/64.8d69a757.js"><link rel="prefetch" href="/assets/js/65.f54c400d.js"><link rel="prefetch" href="/assets/js/66.840c5fe3.js"><link rel="prefetch" href="/assets/js/67.4ddb259b.js"><link rel="prefetch" href="/assets/js/68.e7498700.js"><link rel="prefetch" href="/assets/js/69.bb730956.js"><link rel="prefetch" href="/assets/js/7.9f1ce256.js"><link rel="prefetch" href="/assets/js/70.758932ef.js"><link rel="prefetch" href="/assets/js/71.f847d74c.js"><link rel="prefetch" href="/assets/js/72.7f5dd9c7.js"><link rel="prefetch" href="/assets/js/73.3c0e5aad.js"><link rel="prefetch" href="/assets/js/74.1351a3ef.js"><link rel="prefetch" href="/assets/js/75.ea6dcba3.js"><link rel="prefetch" href="/assets/js/76.d95d7c60.js"><link rel="prefetch" href="/assets/js/77.54ccbb7a.js"><link rel="prefetch" href="/assets/js/78.50234ae9.js"><link rel="prefetch" href="/assets/js/8.c1f22b35.js"><link rel="prefetch" href="/assets/js/9.7af626f7.js">
|
|
<link rel="stylesheet" href="/assets/css/0.styles.b4cb0fef.css">
|
|
</head>
|
|
<body>
|
|
<div id="app" data-server-rendered="true"><div class="theme-container"><header class="nav"><div class="sidebar-button block md:hidden flex-no-shrink"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <div class="logo-container"><a href="/" class="home-link router-link-active"><img src="/logos/pterry.svg" class="logo"> <span class="site-name hidden md:inline can-hide">Pterodactyl</span></a></div> <div class="w-full"><div class="flex"><div class="search-box"><input aria-label="Search" placeholder="Search" autocomplete="off" spellcheck="false" value=""> <!----></div> <nav class="nav-links flex-no-shrink hidden md:flex"><div class="nav-item"><a href="/project/introduction.html" class="nav-link">Documentation
|
|
</a></div><div class="nav-item"><a href="/community/about.html" class="nav-link">Community Guides
|
|
</a></div><div class="nav-item"><a href="https://discord.gg/pterodactyl" target="_blank" rel="noopener noreferrer" class="nav-link external">
|
|
Get Help
|
|
<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></div><div class="nav-item"><a href="https://dashflo.net/docs/api/pterodactyl/v1/" target="_blank" rel="noopener noreferrer" class="nav-link external">
|
|
API
|
|
<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></div> <div class="nav-item"><a href="https://github.com/pterodactyl/panel" target="_blank" rel="noopener noreferrer" class="nav-link">
|
|
Contribute
|
|
<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></div></nav></div></div></header> <div class="sidebar-mask"></div> <div class="sidebar"><nav class="nav-links flex-no-shrink block md:hidden"><div class="nav-item"><a href="/project/introduction.html" class="nav-link">Documentation
|
|
</a></div><div class="nav-item"><a href="/community/about.html" class="nav-link">Community Guides
|
|
</a></div><div class="nav-item"><a href="https://discord.gg/pterodactyl" target="_blank" rel="noopener noreferrer" class="nav-link external">
|
|
Get Help
|
|
<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></div><div class="nav-item"><a href="https://dashflo.net/docs/api/pterodactyl/v1/" target="_blank" rel="noopener noreferrer" class="nav-link external">
|
|
API
|
|
<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></div> <div class="nav-item"><a href="https://github.com/pterodactyl/panel" target="_blank" rel="noopener noreferrer" class="nav-link">
|
|
Contribute
|
|
<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></div></nav> <ul class="sidebar-links"><li><div class="sidebar-group first"><p class="sidebar-heading open"><span>Project Information</span> <!----> <!----></p> <ul class="sidebar-group-items"><li><a href="/project/introduction.html" class="sidebar-link">Introduction</a></li><li><a href="/project/about.html" class="sidebar-link">About</a></li><li><a href="/project/terms.html" class="sidebar-link">Terminology</a></li><li><a href="/project/community.html" class="sidebar-link">Community Standards</a></li></ul></div></li><li><div class="sidebar-group"><p class="sidebar-heading"><span>Panel</span> <!----> <div tabindex="0" class="version-select custom-select float-right"><div class="selected"><div class="inline-block">
|
|
1.5
|
|
<span class="rounded-full ml-2 text-green-dark">current</span></div> <span class="arrow"></span></div> <div class="items hidden"><div class="item"><div class="inline-block">
|
|
1.5
|
|
<span class="rounded-full ml-2 text-green-dark">current</span></div></div></div></div></p> <ul class="sidebar-group-items"><li><a href="/panel/1.0/getting_started.html" class="sidebar-link">Getting Started</a></li><li><a href="/panel/1.0/webserver_configuration.html" class="sidebar-link">Webserver Configuration</a></li><li><a href="/panel/1.0/additional_configuration.html" class="sidebar-link">Additional Configuration</a></li><li><a href="/panel/1.0/updating.html" class="sidebar-link">Updating the Panel</a></li><li><a href="/panel/1.0/troubleshooting.html" class="sidebar-link">Troubleshooting</a></li><li><a href="/panel/1.0/legacy_upgrade.html" class="sidebar-link">Legacy Upgrades</a></li></ul></div></li><li><div class="sidebar-group"><p class="sidebar-heading"><span>Wings</span> <!----> <div tabindex="0" class="version-select custom-select float-right"><div class="selected"><div class="inline-block">
|
|
1.4
|
|
<span class="rounded-full ml-2 text-green-dark">current</span></div> <span class="arrow"></span></div> <div class="items hidden"><div class="item"><div class="inline-block">
|
|
1.4
|
|
<span class="rounded-full ml-2 text-green-dark">current</span></div></div></div></div></p> <ul class="sidebar-group-items"><li><a href="/wings/1.0/installing.html" class="sidebar-link">Installing Wings</a></li><li><a href="/wings/1.0/upgrading.html" class="sidebar-link">Upgrading Wings</a></li><li><a href="/wings/1.0/migrating.html" class="sidebar-link">Migrating to Wings</a></li><li><a href="/wings/1.0/configuration.html" class="sidebar-link">Additional Configuration</a></li></ul></div></li><li><div class="sidebar-group"><p class="sidebar-heading"><span>Tutorials</span> <!----> <!----></p> <ul class="sidebar-group-items"><li><a href="/tutorials/mysql_setup.html" class="sidebar-link">Setting up MySQL</a></li><li><a href="/tutorials/creating_ssl_certificates.html" class="sidebar-link">Creating SSL Certificates</a></li></ul></div></li><li><div class="sidebar-group"><p class="sidebar-heading"><span>Guides</span> <!----> <!----></p> <ul class="sidebar-group-items"><li><a href="/guides/mounts.html" class="sidebar-link">Using Mounts</a></li></ul></div></li><li><div class="sidebar-group collapsable"><p class="sidebar-heading"><span>Development & Ops</span> <span class="arrow right"></span> <!----></p> <!----></div></li></ul> </div> <div class="page"> <div class="content content__default"><h1 id="troubleshooting"><a href="#troubleshooting" class="header-anchor">#</a> Troubleshooting</h1> <p></p><div class="table-of-contents"><ul><li><a href="#reading-error-logs">Reading Error Logs</a><ul><li><a href="#parsing-the-error">Parsing the Error</a></li><li><a href="#understanding-the-error">Understanding the Error</a></li><li><a href="#utilizing-grep">Utilizing GREP</a></li></ul></li><li><a href="#transfer-exceptions-xhr-poll-error">Transfer Exceptions / XHR Poll Error</a><ul><li><a href="#example-errors">Example Errors</a></li><li><a href="#basic-debugging-steps">Basic Debugging Steps</a></li><li><a href="#more-advanced-debugging-steps">More Advanced Debugging Steps</a></li></ul></li><li><a href="#invalid-mac-exception">Invalid MAC Exception</a></li><li><a href="#selinux-issues">SELinux Issues</a><ul><li><a href="#redis-permissions-errors">Redis Permissions Errors</a></li><li><a href="#in-case-there-is-any-weirdness-with-parts-of-the-panel">In case there is any weirdness with parts of the panel</a></li><li><a href="#daemon-connection-errors">Daemon Connection Errors</a></li></ul></li><li><a href="#firewalld-issues">FirewallD issues</a></li><li><a href="#database-errors">Database Errors</a><ul><li><a href="#databasecontroller-php-142">DatabaseController.php:142</a></li></ul></li></ul></div><p></p> <h2 id="reading-error-logs"><a href="#reading-error-logs" class="header-anchor">#</a> Reading Error Logs</h2> <p>If you ever encounter an unexpected error with the Panel the first thing you will likely be asked for is the logs.
|
|
To retrieve these, simply execute the command below which will output the last 100 lines of the Panel's log file.</p> <div class="language-bash extra-class"><pre class="language-bash"><code><span class="token function">tail</span> -n <span class="token number">100</span> /var/www/pterodactyl/storage/logs/laravel-<span class="token variable"><span class="token variable">$(</span><span class="token function">date</span> +%F<span class="token variable">)</span></span>.log
|
|
</code></pre></div><h3 id="parsing-the-error"><a href="#parsing-the-error" class="header-anchor">#</a> Parsing the Error</h3> <p>When you run the command above, you'll probably be hit with a huge wall of text that might scare you. Fear not,
|
|
this is simply a stacktrace leading to the cause of the error, and you can actually ignore almost all of it when
|
|
looking for the cause of the error. Lets take a look at some example output below, which has been truncated to
|
|
make this easier to follow with.</p> <div class="language- extra-class"><pre class="language-text"><code>#70 /srv/www/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(116): Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter(Object(Illuminate\Http\Request))
|
|
#71 /srv/www/public/index.php(53): Illuminate\Foundation\Http\Kernel->handle(Object(Illuminate\Http\Request))
|
|
#72 {main}
|
|
[2018-07-19 00:50:24] local.ERROR: ErrorException: file_put_contents(/srv/www/storage/framework/views/c9c05d1357df1ce4ec8fc5df78c16c493b0d4f48.php): failed to open stream: Permission denied in /srv/www/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:122
|
|
Stack trace:
|
|
#0 [internal function]: Illuminate\Foundation\Bootstrap\HandleExceptions->handleError(2, 'file_put_conten...', '/srv/www/vendor...', 122, Array)
|
|
#1 /srv/www/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(122): file_put_contents('/srv/www/storag...', '<?php $__env->s...', 0)
|
|
#2 /srv/www/vendor/laravel/framework/src/Illuminate/View/Compilers/BladeCompiler.php(122): Illuminate\Filesystem\Filesystem->put('/srv/www/storag...', '<?php $__env->s...')
|
|
#3 /srv/www/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(51): Illuminate\View\Compilers\BladeCompiler->compile('/srv/www/resour...')
|
|
#4 /srv/www/vendor/laravel/framework/src/Illuminate/View/View.php(142): Illuminate\View\Engines\CompilerEngine->get('/srv/www/resour...', Array)
|
|
#5 /srv/www/vendor/laravel/framework/src/Illuminate/View/View.php(125): Illuminate\View\View->getContents()
|
|
</code></pre></div><p>The first thing you'll want to do is follow the chain of numbers <em>up</em> until you find <code>#0</code>, this will be the function that
|
|
triggered the exception. Right above line 0 you will see a line that has the date and time in brackets, <code>[2018-07-19 00:50:24]</code>
|
|
above for example. This line will be the human readable exception that you can use to understand what went wrong.</p> <h3 id="understanding-the-error"><a href="#understanding-the-error" class="header-anchor">#</a> Understanding the Error</h3> <p>In the example above we can see that the actual error was:</p> <div class="language- extra-class"><pre class="language-text"><code>local.ERROR: ErrorException: file_put_contents(...): failed to open stream: Permission denied in /srv/www/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:122
|
|
</code></pre></div><p>From this error we can determine that there was an error performing a <a href="http://php.net/manual/en/function.file-put-contents.php" target="_blank" rel="noopener noreferrer">file_put_contents()<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a> call, and the error was
|
|
that we couldn't open the file because permissions were denied. Its okay if you don't understand the error at all, but
|
|
it does help you get faster support if you're able to provide these logs, and at least find the source of the error.
|
|
Sometimes the errors are pretty straightforward and will tell you exactly what went wrong, such as a <code>ConnectionException</code>
|
|
being thrown when the Panel can't connect to the Daemon.</p> <h3 id="utilizing-grep"><a href="#utilizing-grep" class="header-anchor">#</a> Utilizing GREP</h3> <p>If you're trying to go through a bunch of errors quickly, you can use the command below which will limit the results returned to only
|
|
be the actual error lines, without all of the stack traces.</p> <div class="language-bash extra-class"><pre class="language-bash"><code><span class="token function">tail</span> -n <span class="token number">1000</span> /var/www/pterodactyl/storage/logs/laravel-<span class="token variable"><span class="token variable">$(</span><span class="token function">date</span> +%F<span class="token variable">)</span></span>.log <span class="token operator">|</span> <span class="token function">grep</span> <span class="token string">"\[<span class="token variable"><span class="token variable">$(</span><span class="token function">date</span> +%Y<span class="token variable">)</span></span>"</span>
|
|
</code></pre></div><h2 id="transfer-exceptions-xhr-poll-error"><a href="#transfer-exceptions-xhr-poll-error" class="header-anchor">#</a> Transfer Exceptions / XHR Poll Error</h2> <p>If you are seeing errors similar to the examples below, chances are there is some networking related issue, or you
|
|
just don't have a required service running.</p> <h3 id="example-errors"><a href="#example-errors" class="header-anchor">#</a> Example Errors</h3> <ul><li><p>"We were unable to connect to the main Socket.IO server, there may be network issues currently. The panel may not work as expected."</p></li> <li><p>"A TransferException was encountered while trying to contact the daemon, please ensure it's online and accessible. This error has been logged."</p></li></ul> <h3 id="basic-debugging-steps"><a href="#basic-debugging-steps" class="header-anchor">#</a> Basic Debugging Steps</h3> <ul><li><p>Ensure you have AdBlock disabled or whitelisted for your Panel and Daemon domains.</p></li> <li><p>Check your browser's console by pressing <code>Ctrl + Shift + J</code> (in Chrome) or <code>Cmd + Alt + I</code> (in Safari). If there is
|
|
a red error in it, chances are that it will narrow down the potential problem.</p></li> <li><p>Make sure if the daemon is properly installed and the active configuration matches the configuration shown under
|
|
<code>Admin -> Node -> Configuration</code> in the Panel.</p></li> <li><p>Check that the Daemon is running, and not reporting errors. Use <code>service wings status</code> to check the current status of the process.</p></li> <li><p>Check that the Daemon ports are open on your firewall. The Daemon uses ports <code>8080</code> or <code>8443</code> for HTTP traffic,
|
|
and <code>2022</code> for SFTP traffic.</p></li> <li><p>Check that the Panel can reach the Daemon using the domain that is configured on the Panel. Run <code>curl https://domain.com:8080</code> on the Panel server and ensure that it can connect to the Daemon.</p></li> <li><p>Ensure that you are using the correct HTTP scheme for your Panel and Daemon. If the Panel is running over HTTPS
|
|
the Daemon will also need to be running on HTTPS.</p></li></ul> <h3 id="more-advanced-debugging-steps"><a href="#more-advanced-debugging-steps" class="header-anchor">#</a> More Advanced Debugging Steps</h3> <ul><li><p>Stop the Daemon and run <code>cd /srv/daemon; sudo npm start</code> to see if there are any errors being output by the Daemon.
|
|
If so, try resolving them manually, or contact us on Discord for more assistance.</p></li> <li><p>Check your DNS and ensure that the response you receive is the one you expect using a tool such as <code>nslookup</code> or <code>dig</code>.</p></li> <li><p>If you use CloudFlare make sure that the yellow cloud is disabled for your Daemon or Panel <code>A</code> records.</p></li> <li><p>Make sure when using the daemon behind a firewall — pfSense, OpenSwitch, etc — that the correct NAT settings to access
|
|
the Daemon's ports from the outside network are setup.</p></li> <li><p>If nothing is working so far, check your own DNS settings and consider switching DNS servers.</p></li> <li><p>When running the Panel and Daemon on one server it can sometimes help if to add an entry in <code>/etc/hosts</code> that directs
|
|
the public IP back to the server. Sometimes the reverse path is also needed, so you may need to add an entry to your
|
|
servers <code>/etc/hosts</code> file that points the Panel's domain to the correct IP.</p></li> <li><p>When running the Daemon and Panel on separate VM's using the same adapter make sure the VM's can connect to each
|
|
other. Promiscuous mode might be needed.</p></li></ul> <h2 id="invalid-mac-exception"><a href="#invalid-mac-exception" class="header-anchor">#</a> Invalid MAC Exception</h2> <div class="custom-block warning"><p class="custom-block-title">WARNING</p> <p>This error should never happen if you correctly follow our installation and upgrade guides. The only time we have
|
|
ever seen this error occur is when you blindly restore the Panel database from a backup and try to use a fresh
|
|
installation of the Panel.</p> <p>When restoring backups you should <em>always</em> restore the <code>.env</code> file!</p></div> <p>Sometimes when using the Panel you'll unexpectedly encounter a broken page, and upon checking the logs you'll see
|
|
an exception mentioning an invalid MAC when decrypting. This error is caused by mismatched <code>APP_KEY</code>s in your <code>.env</code> file
|
|
when the data was encrypted versus decrypted.</p> <p>If you are seeing this error the only solution is to restore the <code>APP_KEY</code> from your <code>.env</code> file. If you have lost that
|
|
original key there is no way to recover the lost data.</p> <h2 id="selinux-issues"><a href="#selinux-issues" class="header-anchor">#</a> SELinux Issues</h2> <p>On systems with SELinux installed you might encounter unexpected errors when running redis or attempting to connect
|
|
to the daemon to perform actions. These issues can generally be resolved by executing the commands below to allow
|
|
these programs to work with SELinux.</p> <h3 id="redis-permissions-errors"><a href="#redis-permissions-errors" class="header-anchor">#</a> Redis Permissions Errors</h3> <div class="language-bash extra-class"><pre class="language-bash"><code>audit2allow -a -M redis_t
|
|
semodule -i redis_t.pp
|
|
</code></pre></div><h3 id="in-case-there-is-any-weirdness-with-parts-of-the-panel"><a href="#in-case-there-is-any-weirdness-with-parts-of-the-panel" class="header-anchor">#</a> In case there is any weirdness with parts of the panel</h3> <div class="language-bash extra-class"><pre class="language-bash"><code>restorecon -R /var/www/pterodactyl/
|
|
</code></pre></div><h3 id="daemon-connection-errors"><a href="#daemon-connection-errors" class="header-anchor">#</a> Daemon Connection Errors</h3> <div class="language-bash extra-class"><pre class="language-bash"><code>audit2allow -a -M http_port_t
|
|
semodule -i http_port_t.pp
|
|
</code></pre></div><h2 id="firewalld-issues"><a href="#firewalld-issues" class="header-anchor">#</a> FirewallD issues</h2> <p>If you are on a RHEL/CentOS server with firewalld installed you may have broken DNS.</p> <div class="language- extra-class"><pre class="language-text"><code>firewall-cmd --permanent --zone=trusted --change-interface=pterodactyl0
|
|
firewall-cmd --reload
|
|
</code></pre></div><p>restart docker and wings after running these to be sure the rules are applied.</p> <h2 id="database-errors"><a href="#database-errors" class="header-anchor">#</a> Database Errors</h2> <h3 id="databasecontroller-php-142"><a href="#databasecontroller-php-142" class="header-anchor">#</a> DatabaseController.php:142</h3> <div class="language- extra-class"><pre class="language-text"><code>production.ERROR: ErrorException: Undefined variable: host in /var/www/pterodactyl/app/Http/Controllers/Admin/DatabaseController.php:142
|
|
</code></pre></div><p>The database user you are trying to use doesn't have appropriate grants/has used incorrect password.</p></div> <div class="page-edit"><div class="edit-link"><a href="https://github.com/pterodactyl/documentation/edit/master/panel/0.7/troubleshooting.md" target="_blank" rel="noopener noreferrer">Help us improve this page.</a> <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></div> <!----></div> <!----> </div></div><div class="global-ui"></div></div>
|
|
<script src="/assets/js/app.3e4dfcc7.js" defer></script><script src="/assets/js/4.bff5ff58.js" defer></script><script src="/assets/js/1.79a56ae5.js" defer></script><script src="/assets/js/61.c644eb6e.js" defer></script>
|
|
</body>
|
|
</html>
|