After install I can´t connect to Install Page

Checklist
I have read intro post: About the Installation Issues category
I have read the tutorials, help and searched for similar issues
I provide relevant information about my server (component names and versions, etc.)
I provide a copy of my logs and healthcheck
I describe the steps I have taken to trouble shoot the problem
I describe the steps on how to reproduce the issue

After following the installation instructions completely and without any problems, I wanted to connect to https://mydomain.eu/install to do the rest of the installation.
However I only see:

404 Not Found | nginx/1.18.0 (Ubuntu)

Where could I look what the problem is? The Ubuntu 22.04 LTS itself is a hosted vServer. The log of the installation can be found below.

------- LOG -------

user@passbolt:~$ sudo apt install passbolt-ce-server
Paketlisten werden gelesen… Fertig
Abhängigkeitsbaum wird aufgebaut… Fertig
Statusinformationen werden eingelesen… Fertig
passbolt-ce-server ist schon die neueste Version (3.11.0-1).
Die folgenden Pakete wurden automatisch installiert und werden nicht mehr benötigt:
libflashrom1 libftdi1-2
Verwenden Sie »sudo apt autoremove«, um sie zu entfernen.
0 aktualisiert, 0 neu installiert, 0 zu entfernen und 20 nicht aktualisiert.
1 nicht vollständig installiert oder entfernt.
Nach dieser Operation werden 0 B Plattenplatz zusätzlich benutzt.
Möchten Sie fortfahren? [J/n] j
passbolt-ce-server (3.11.0-1) wird eingerichtet …
mysql: [Warning] Using a password on the command line interface can be insecure.
mysql: [Warning] Using a password on the command line interface can be insecure.
mysql: [Warning] Using a password on the command line interface can be insecure.
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Requesting a certificate for passbolt_mydomain_eu

Successfully received certificate.
Certificate is saved at: /etc/letsencrypt/live/passbolt.mydomain.eu/fullchain.pem
Key is saved at: /etc/letsencrypt/live/passbolt.mydomain.eu/privkey.pem
This certificate expires on 2023-06-01.
These files will be updated when the certificate renews.
Certbot has set up a scheduled task to automatically renew this certificate in the background.

Deploying certificate
Successfully deployed certificate for passbolt.mydomain.eu to /etc/nginx/sites-enabled/default
Congratulations! You have successfully enabled HTTPS on https ://passbolt_mydomain_eu


If you like Certbot, please consider supporting our work by:

  • Donating to ISRG / Let’s Encrypt: https://letsencrypt_org/donate
  • Donating to EFF: https://eff_org/donate-le

 ____                  __          ____
/ __ \____  _____ ____/ /_  ____  / / /_

/ // / __ `/ / / __ / __ / / _/
/ / // ( |
) /
/ / /
/ / / /
/
/ _
,
/
//./_//__/

Open source password manager for teams

A JWT key pair was successfully created.
Public key path: /etc/passbolt/jwt/jwt.pem
Secret key path: /etc/passbolt/jwt/jwt.key

Well done! Visit https://passbolt_mydomain_eu to finish installation

=====================================================================
Trigger für nginx-core (1.18.0-6ubuntu14.3) werden verarbeitet …
Triggering nginx reload …
Scanning processes…
Scanning linux images…

Running kernel seems to be up-to-date.

No services need to be restarted.

No containers need to be restarted.

No user sessions are running outdated binaries.

No VM guests are running outdated hypervisor (qemu) binaries on this host.

Edit: The _ in most of the Links are because of the restriction for new users.

Hi,

I assume you followed the following guide for HTTPS configuration?

Did you do the

sudo systemctl reload nginx

Also, can you have a look at /etc/passbolt/passbolt.php and check that the fullBaseUrl contains the https.

Best,
Max

Hi max,
the php file is not existent, Nano tells me that it is a new file.

@Angrolsch We can look to get more info about nginx.

Post results from the test sudo nginx -t

Also, find files in the /etc/nginx/ path that are *.conf to see what is being used by nginx for configuration of ports and domains, etc. You can post to confirm. We are looking for the portions showing:

server {

    (This is a "server block", post these) 
} 

A 404 on a correct url will typically mean nginx is attempting to serve from a file or path that is not there.

Good Morning garrett,

here are the results from “sudo nginx -t”

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

I find a Server block in these two files:
1 - /etc/nginx/sites-enabled/nginx-passbolt.conf
2 - /etc/nginx/sites-available/nginx-passbolt.conf

1 has this in it:

server {

listen 80;
listen [::]:80;

Managed by Passbolt

server_name mydomain.eu;

client_body_buffer_size 100K;
client_header_buffer_size 1K;
client_max_body_size 5M;

client_body_timeout 10;
client_header_timeout 10;
keepalive_timeout 5 5;
send_timeout 10;

root /usr/share/php/passbolt/webroot;
index index.php;
error_log /var/log/nginx/passbolt-error.log info;
access_log /var/log/nginx/passbolt-access.log;

Managed by Passbolt

include PASSBOLT_SSL

location / {
try_files $uri $uri/ /index.php?$args;
}

location ~ .php$ {
try_files $uri =404;
include fastcgi_params;
fastcgi_pass unix:/run/php/php8.1-fpm.sock;
fastcgi_index index.php;
fastcgi_intercept_errors on;
fastcgi_split_path_info ^(.+.php)(.+)$;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SERVER_NAME $http_host;
fastcgi_param PHP_VALUE “upload_max_filesize=5M \n post_max_size=5M”;
}

}

2 has this in it

> server {
> 
>   listen 80;
>   listen [::]:80;
> 
>   # Managed by Passbolt
>   # server_name
> 
>   client_body_buffer_size     100K;
>   client_header_buffer_size   1K;
>   client_max_body_size        5M;
> 
>   client_body_timeout   10;
>   client_header_timeout 10;
>   keepalive_timeout     5 5;
>   send_timeout          10;
> 
>   root /usr/share/php/passbolt/webroot;
>   index index.php;
>   error_log /var/log/nginx/passbolt-error.log info;
>   access_log /var/log/nginx/passbolt-access.log;
> 
>   # Managed by Passbolt
>   # include __PASSBOLT_SSL__
> 
>   location / {
>     try_files $uri $uri/ /index.php?$args;
>   }
> 
>   location ~ \.php$ {
>     try_files                $uri =404;
>     include                  fastcgi_params;
>     fastcgi_pass             unix:/run/php/__PHP_SOCK__;
>     fastcgi_index            index.php;
>     fastcgi_intercept_errors on;
>     fastcgi_split_path_info  ^(.+\.php)(.+)$;
>     fastcgi_param            SCRIPT_FILENAME $document_root$fastcgi_script_name;
>     fastcgi_param            SERVER_NAME $http_host;
>     fastcgi_param PHP_VALUE  "upload_max_filesize=5M \n post_max_size=5M";
>   }
> 
> }

Edit: Shouldn´t the server_name be "passbolt.mydomain.eu"? In the first file? I`m hosting it at IONOS.

Yes it should.

The sites-enabled file should be symlinked to the other.

I expanded the server name to “passbolt.mydomain.eu” and deleted “/etc/nginx/sites-available/nginx-passbolt.conf”.
After this I made a symlink from “/etc/nginx/sites-enabled/nginx-passbolt.conf” to “/etc/nginx/sites-available/nginx-passbolt.conf” and rebootet the system.
But it doesn’t work. What else could I try?

With nginx you also have to reload the service after changes: sudo service nginx reload

Even after a complete Systemreboot?
But nevermind, same problem after reloading the service.
Just the subdomain is showing the nginx.

The subdomain with /install is showing the 404.
2

Edit: I get a new Error. with the nginx test “sudo nginx -t”

nginx: [warn] conflicting server name “passbolt.mydomain.eu” on 0.0.0.0:80, ignored
nginx: [warn] conflicting server name “passbolt.mydomain.eu” on [::]:80, ignored
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

The error suggests somehow there are duplicate server blocks in your nginx config files so it’s ignoring the second instance.

Once you remove the duplicate, can you load the / path of your site?

The sites-available file needs to have the server_name variable indicating passbolt.yourdomain.eu

I have set up the server again and set everything as I had set it before… nothing different than before.
Now everything works right away and runs like a charm.

I don’t know where the problem was, but now it’s over. Thank you very much for the help.

1 Like