404 Not Found
-
Hello,
I have installed Pufferpanel according to the steps but when I get in the site it showed "404 Not Found".
I'm using Ubuntu 16.10 server with nginx.
I believe it is some problem on the installation, are there any ways to fix?
-
What do the first few lines of
/etc/nginx/sites-available/pufferpanel.conf
look like? On a default setup, they should look like this:server { listen 80; root /srv/pufferpanel; index index.php; server_name server1.domain.com; client_max_body_size 20m; client_body_timeout 120s; location / { try_files /public/router.php =404; fastcgi_split_path_info ^(.+?\.php)(/.*)$; fastcgi_pass unix:/run/php/php7.0-fpm.sock; fastcgi_index router.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include /etc/nginx/fastcgi_params; } location /assets { try_files /app/$uri =404; } }
If it does, then make sure the listing of
/srv/pufferpanel
has this:app composer.json composer.phar install logs pufferpanel src CODE_OF_CONDUCT.md composer.lock config.json LICENSE public README.md vendor
If you don't perhaps you skipped a step.
-
Hello,
I have found that the "/srv/pufferpanel" did not exist as I forgot to unzip the ".tar.gz"
Now I solved the 404 Not Found error. However when I log in the website it showed the error in the image. My conf file is same as the conf for nginx. How can I solve it? (I think there's some problem on router.php)
-
My guess is that you haven't actually installed it. Refer to the install documentation. After you untar it inside of
/srv
you need to do the following:cd pufferpanel chmod +x pufferpanel ./pufferpanel install
More info here: https://www.pufferpanel.com/docs
-
Hello, I did everything accordingly when I install, including the chmod.
I guess there is some problem on the php file. Could you send me both php file so I can replace them via ftp? Thanks.
-
What is the result of you running the following command? (The last 10 lines).
cat /var/log/nginx/error.log
-
2017/12/21 15:14:49 [error] 3290#3290: *4 FastCGI sent in stderr: "PHP message: PHP Fatal error: Uncaught Exception: The config file config.json does not exist. in /srv/pufferpanel/src/core/config/jsonconfig.php:37 Stack trace: #0 /srv/pufferpanel/src/core/config.php(57): PufferPanel\Core\Config\JsonConfig->__construct('config.json') #1 /srv/pufferpanel/src/core/config.php(36): PufferPanel\Core\Config::checkStatus() #2 /srv/pufferpanel/public/router.php(35): PufferPanel\Core\Config::config('logsDirectory') #3 {main} thrown in /srv/pufferpanel/src/core/config/jsonconfig.php on line 37" while reading response header from upstream, client: 192.***.**.57, server: 192.***.**.119, request: "GET / HTTP/1.1", upstream: "fastcgi://unix:/run/php/php7.0-fpm.sock:", host: "192.***.**.119"
jsonconfig.php
<?php /* PufferPanel - A Game Server Management Panel Copyright (c) 2015 Dane Everitt This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/. */ namespace PufferPanel\Core\Config; use \Exception; class JsonConfig implements ConfigInterface { private $config; /** * Constructor class for implementing configuration files from JSON. * * @param string $path Configuration file relative to BASE_DIR * @param bool $array */ public function __construct($path, $array = false) { if (!file_exists(BASE_DIR . $path)) { throw new Exception("The config file " . $path . " does not exist."); } $this->config = json_decode(file_get_contents(BASE_DIR . $path), $array); if (json_last_error() != "JSON_ERROR_NONE") { throw new Exception("An error occured when trying decode " . $path . ". " . json_last_error()); } } public function config($base = null) { return (is_null($base)) ? $this->config : property_exists($this->config, $base) ? $this->config->{$base} : null; } }
-
The log is saying that the file config.json is not found. This file is supposed to be found in
/srv/pufferpanel/config.json
. While you can recreate it with something like below, perhaps you want to attempt a purge and a reinstall. I think you get instructions on how to purge when you attempt to reinstall.{ "mysql": { "host": "localhost", "database": "pufferpanel", "username": "pufferpanel", "password": "[*hashedmysqlpassword*]", "port": "3306" } }
-
When I installed the panel and when it asked for mysql detalis, I entered and it said "no permission to access to database". Is this the reason why the config is not generated?
-
It is quite possible but I do not know for sure. Do you not have a privileged mysql account to use? I just use my root. I believe puffer uses it to create a limited user, a database and tables.
-
I have created a user and a database for pufferpanel, and I granted privileges for it. Probably I skipped some steps, maybe just use the root as the mysql user.
Also should I recreate the config and put those details back?
-
Just re-run the install and this time use the root mysql login. Let me know if that works.
-
The website was able to connect but this error occurred./var/log/nginx/error.log
2018/01/15 16:07:04 [alert] 2517#2517: *12 open socket #15 left in connection 5 2018/01/15 16:07:04 [alert] 2517#2517: *11 open socket #14 left in connection 6 2018/01/15 16:07:04 [alert] 2517#2517: aborting