Install wordpress to NS8

In NS7 I did the migration several times, without problems.
I think it’s a problem with the migration from Apache to NGINX.
Thank you again!

Salut @stephdl

In WordPress, you should never use URL full path but URL relative path.

Also, Duplicator can take care of those URL without any problem.

I was tempted to write GIGO (Garbage IN Garbage Out) but I have too much respect for you and you works to dare writing such a thing. :wink:

Michel-André

2 Likes

Here were the most problems I encountered, after the migration.

honestly I am not sure, but anyway I did a module for wordpress apache based with php8.3

1 Like

There is quite a few WordPress extensions to search and replace URL.

With the extension replace: domain-name/page-name to /page-name.

That should work.

Michel-André

1 Like

Thank you!
I will try.

1 Like

things are coming stay tuned

2 Likes

is this within the WRP app, or within the webserver App. Having sftpgo access on WP too would actually be a good thing, but preferable would be using existing sftpgo to access wp app files without sacrificing security ofcourse…

Opps, its achiving said within the Webserver App.

I have good experience with Updraft Plus for backup, restore, and migration purposes.

3 Likes

I can verify. Updraft Plus is good for backup, restore and migrations purposes.

3 Likes

Hi, after installing and configuring MariaDB I got errors.
I created a subdomain as CNAME to my Server FQDN like above on my internal OPNSense - ping works.

When I use the link from the GUI, the MyPHPAdmin page opens with the server FQDN and admin:admin does not work.

If I change the server FQDN to the mariadb subdomain, the MyPHPAdmin page also opens. However, after entering admin:admin I get “Bad Gateway”.
https is activated.

What is my fault?

Hum it expects the connection comes from the localhost and probably the proxy create a request from outside

Only logs can explain

After I installed LE certificates, the access works, even if the link does not refer to <mariadb.mydomain.tld> but to <hostename.mydomain.tld>

It seems to be a problem with the standard cert. In a fit of convenience, I thought I could save myself the hassle of certificates for my internal system.

the standard cert is default cert with a common name like host-05678.ns8.test and proxy with common name that does not fit the domain name matches not well with some applications. anyway we need logs to state on it

1 Like

but with a purely local HTTP connection it should not be a problem

we need proofs and evidences, sorry but talks are cheap

Now I try to configure the mariadb1 instance and do <ssh mariadb1@localhost>
Logically, I am asked for the PW for mariadb1. I don’t have such a user, only admin and the user I just created for the newly created database.
What is my fault?

1 Like

runagent -m mariadb1

it is the new way for all module

1 Like

I finished the installation, and can run initial worpress setup.
But I get an information:

Cannot write to the wp-config.php file.

You can create the file wp-config.php manually and insert the following text there.

What I have to check?

webserver1 log

2024-06-29T00:06:45+02:00 [1:webserver1:nginx] 10.0.2.100 - - [28/Jun/2024:22:06:45 +0000] “POST /wp-admin/setup-config.php?step=0 HTTP/1.1” 200 2941 “https://wp-dev.home.dargels.de/wp-admin/setup-config.php” “Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.5 Safari/605.1.15” “192.168.3.151”
2024-06-29T00:06:52+02:00 [1:webserver1:nginx] 10.0.2.100 - - [28/Jun/2024:22:06:52 +0000] “GET /wp-admin/setup-config.php?step=1&language=de_DE HTTP/1.1” 200 5749 “https://wp-dev.home.dargels.de/wp-admin/setup-config.php?step=0” “Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.5 Safari/605.1.15” “192.168.3.151”
2024-06-29T00:06:52+02:00 [1:webserver1:nginx] 10.0.2.100 - - [28/Jun/2024:22:06:52 +0000] “GET /wp-includes/js/dist/vendor/wp-polyfill.min.js?ver=3.15.0 HTTP/1.1” 200 38590 “https://wp-dev.home.dargels.de/wp-admin/setup-config.php?step=1&language=de_DE” “Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.5 Safari/605.1.15” “192.168.3.151”
2024-06-29T00:06:52+02:00 [1:webserver1:nginx] 10.0.2.100 - - [28/Jun/2024:22:06:52 +0000] “GET /wp-includes/js/dist/hooks.min.js?ver=2810c76e705dd1a53b18 HTTP/1.1” 200 4307 “https://wp-dev.home.dargels.de/wp-admin/setup-config.php?step=1&language=de_DE” “Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.5 Safari/605.1.15” “192.168.3.151”
2024-06-29T00:06:52+02:00 [1:webserver1:nginx] 10.0.2.100 - - [28/Jun/2024:22:06:52 +0000] “GET /wp-includes/js/dist/i18n.min.js?ver=5e580eb46a90c2b997e6 HTTP/1.1” 200 9141 “https://wp-dev.home.dargels.de/wp-admin/setup-config.php?step=1&language=de_DE” “Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.5 Safari/605.1.15” “192.168.3.151”
2024-06-29T00:06:52+02:00 [1:webserver1:nginx] 10.0.2.100 - - [28/Jun/2024:22:06:52 +0000] “GET /wp-includes/js/dist/vendor/regenerator-runtime.min.js?ver=0.14.0 HTTP/1.1” 200 6625 “https://wp-dev.home.dargels.de/wp-admin/setup-config.php?step=1&language=de_DE” “Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.5 Safari/605.1.15” “192.168.3.151”
2024-06-29T00:06:52+02:00 [1:webserver1:nginx] 10.0.2.100 - - [28/Jun/2024:22:06:52 +0000] “GET /wp-admin/js/password-toggle.min.js?ver=6.5.5 HTTP/1.1” 200 847 “https://wp-dev.home.dargels.de/wp-admin/setup-config.php?step=1&language=de_DE” “Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.5 Safari/605.1.15” “192.168.3.151”
2024-06-29T00:06:52+02:00 [1:webserver1:nginx] 10.0.2.100 - - [28/Jun/2024:22:06:52 +0000] “GET /wp-includes/js/dist/vendor/wp-polyfill-inert.min.js?ver=3.1.2 HTTP/1.1” 200 8171 “https://wp-dev.home.dargels.de/wp-admin/setup-config.php?step=1&language=de_DE” “Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.5 Safari/605.1.15” “192.168.3.151”
2024-06-29T00:09:14+02:00 [1:webserver1:nginx] 10.0.2.100 - - [28/Jun/2024:22:09:14 +0000] “POST /wp-admin/setup-config.php?step=2 HTTP/1.1” 200 5808 “https://wp-dev.home.dargels.de/wp-admin/setup-config.php?step=1&language=de_DE” “Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.5 Safari/605.1.15” “192.168.3.151”
2024-06-29T00:12:37+02:00 [1:webserver1:agent@webserver1] task/module/webserver1/5aa9dddf-3480-460e-b91d-87cb427af388: get-name/50get_name is starting
2024-06-29T00:12:37+02:00 [1:webserver1:agent@webserver1] task/module/webserver1/7d7c1a25-dfe0-49c4-88f8-4fe8825d079b: get-configuration/20read is starting
2024-06-29T00:12:38+02:00 [1:webserver1:agent@webserver1] task/module/webserver1/33b35bf7-6f06-4812-9abc-76746e5826d6: get-status/20read is starting
2024-06-29T00:12:38+02:00 [1:webserver1:agent@webserver1] task/module/webserver1/5aa9dddf-3480-460e-b91d-87cb427af388: action “get-name” status is “completed” (0) at step 50get_name
2024-06-29T00:12:39+02:00 [1:webserver1:agent@webserver1] task/module/webserver1/7d7c1a25-dfe0-49c4-88f8-4fe8825d079b: action “get-configuration” status is “completed” (0) at step validate-output.json
2024-06-29T00:12:40+02:00 [1:webserver1:agent@webserver1] task/module/webserver1/33b35bf7-6f06-4812-9abc-76746e5826d6: action “get-status” status is “completed” (0) at step validate-output.json

Ps.: I added the wp-config.php manually.
Finally WordPress could be installed and wp_admin opened the admin backend.

The hardships of the mountain are now behind me, now come the hardships of the plain.

Thanky you for the great job and the HowTo, @stephdl

Unfortunately, the seemingly successful WordPress installation that worked the night before was not sustainable.

The next day, WordPress no longer started: no connection to the DB.
The analysis showed me that the wp-config.php was no longer in the WordPress root directory, so it really had been deleted.

I thought I would go the easy way - a new installation, especially as something had originally prevented the automatic creation of the wp-config-php.
I restored the server from my PVE backup to a backup prior to installing Maria DB, checked subdomains, created certificates and installed and configured MariaDB1.
The call from phpMyAdmin via the link calls https://hostname.domain.tld/phpmyadmin - not https://mariadb.domain.tld/phpmyadmin.

Whatever, the login in phpMyAdmin appears, but the login admin:admin does not work.

MariaDB log

2024-06-30T12:05:28+02:00 [1:mariadb1:podman] 2024-06-30 12:05:28.855220197 +0200 CEST m=+5.071233415 container start ca8aec7aed5542f6dd7e4123e45c0112b7987774c903f4441c8f8e0793fd5b8d (image=docker.io/phpmyadmin/phpmyadmin:5.2.1, name=phpmyadmin-app, pod_id=88edc1cd1bf211063560101f99c329b4bb958c5f8465c0ff016711d1f32c31aa, org.opencontainers.image.authors=The phpMyAdmin Team developers@phpmyadmin.net, org.opencontainers.image.version=5.2.1, org.opencontainers.image.vendor=phpMyAdmin, org.opencontainers.image.description=Run phpMyAdmin with Alpine, Apache and PHP FPM., org.opencontainers.image.title=Official phpMyAdmin Docker image, org.opencontainers.image.url=GitHub - phpmyadmin/docker: Docker container for phpMyAdmin, org.opencontainers.image.licenses=GPL-2.0-only, org.opencontainers.image.documentation=GitHub - phpmyadmin/docker: Docker container for phpMyAdmin, PODMAN_SYSTEMD_UNIT=phpmyadmin-app.service, org.opencontainers.image.source=GitHub - phpmyadmin/docker: Docker container for phpMyAdmin)
2024-06-30T12:05:28+02:00 [1:mariadb1:podman] ca8aec7aed5542f6dd7e4123e45c0112b7987774c903f4441c8f8e0793fd5b8d
2024-06-30T12:05:29+02:00 [1:mariadb1:podman] 2024-06-30 12:05:29.069004078 +0200 CEST m=+0.173565696 container exec ca8aec7aed5542f6dd7e4123e45c0112b7987774c903f4441c8f8e0793fd5b8d (image=docker.io/phpmyadmin/phpmyadmin:5.2.1, name=phpmyadmin-app, pod_id=88edc1cd1bf211063560101f99c329b4bb958c5f8465c0ff016711d1f32c31aa, org.opencontainers.image.source=GitHub - phpmyadmin/docker: Docker container for phpMyAdmin, org.opencontainers.image.title=Official phpMyAdmin Docker image, org.opencontainers.image.url=GitHub - phpmyadmin/docker: Docker container for phpMyAdmin, org.opencontainers.image.vendor=phpMyAdmin, org.opencontainers.image.authors=The phpMyAdmin Team developers@phpmyadmin.net, org.opencontainers.image.description=Run phpMyAdmin with Alpine, Apache and PHP FPM., org.opencontainers.image.documentation=GitHub - phpmyadmin/docker: Docker container for phpMyAdmin, org.opencontainers.image.licenses=GPL-2.0-only, PODMAN_SYSTEMD_UNIT=phpmyadmin-app.service, org.opencontainers.image.version=5.2.1)
2024-06-30T12:05:29+02:00 [1:mariadb1:podman] Enabling site phpmyadmin.
2024-06-30T12:05:29+02:00 [1:mariadb1:podman] To activate the new configuration, you need to run:
2024-06-30T12:05:29+02:00 [1:mariadb1:podman] service apache2 reload
2024-06-30T12:05:29+02:00 [1:mariadb1:phpmyadmin-app] AH00558: apache2: Could not reliably determine the server’s fully qualified domain name, using 10.0.2.100. Set the ‘ServerName’ directive globally to suppress this message
2024-06-30T12:05:30+02:00 [1:mariadb1:podman] Reloading Apache httpd web server: apache2 failed!
2024-06-30T12:05:30+02:00 [1:mariadb1:podman] Apache2 is not running … (warning).
2024-06-30T12:05:30+02:00 [1:mariadb1:podman] 2024-06-30 12:05:30.005839555 +0200 CEST m=+1.110401206 container exec_died ca8aec7aed5542f6dd7e4123e45c0112b7987774c903f4441c8f8e0793fd5b8d (image=docker.io/phpmyadmin/phpmyadmin:5.2.1, name=phpmyadmin-app, org.opencontainers.image.licenses=GPL-2.0-only, org.opencontainers.image.url=GitHub - phpmyadmin/docker: Docker container for phpMyAdmin, PODMAN_SYSTEMD_UNIT=phpmyadmin-app.service, org.opencontainers.image.authors=The phpMyAdmin Team developers@phpmyadmin.net, org.opencontainers.image.version=5.2.1, org.opencontainers.image.description=Run phpMyAdmin with Alpine, Apache and PHP FPM., org.opencontainers.image.documentation=GitHub - phpmyadmin/docker: Docker container for phpMyAdmin, org.opencontainers.image.source=GitHub - phpmyadmin/docker: Docker container for phpMyAdmin, org.opencontainers.image.title=Official phpMyAdmin Docker image, org.opencontainers.image.vendor=phpMyAdmin)
2024-06-30T12:05:30+02:00 [1:mariadb1:phpmyadmin-app] AH00558: apache2: Could not reliably determine the server’s fully qualified domain name, using 10.0.2.100. Set the ‘ServerName’ directive globally to suppress this message
2024-06-30T12:05:30+02:00 [1:mariadb1:systemd] phpmyadmin-app.service: Control process exited, code=exited, status=1/FAILURE
2024-06-30T12:05:30+02:00 [1:mariadb1:phpmyadmin-app] [Sun Jun 30 10:05:30.344702 2024] [mpm_prefork:notice] [pid 1] AH00163: Apache/2.4.57 (Debian) PHP/8.2.8 configured – resuming normal operations
2024-06-30T12:05:30+02:00 [1:mariadb1:phpmyadmin-app] [Sun Jun 30 10:05:30.345552 2024] [core:notice] [pid 1] AH00094: Command line: ‘apache2 -D FOREGROUND’

noticeable in the log are

2024-06-30T12:05:29+02:00 [1:mariadb1:podman] To activate the new configuration, you need to run:
2024-06-30T12:05:29+02:00 [1:mariadb1:podman]   service apache2 reload
2024-06-30T12:05:29+02:00 [1:mariadb1:phpmyadmin-app] AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 10.0.2.100. Set the 'ServerName' directive globally to suppress this message
2024-06-30T12:05:30+02:00 [1:mariadb1:podman] Reloading Apache httpd web server: apache2 failed!

As I said, the URL uses the server name.
But why are they trying to start apache2? We use nginx - right?

Now I am at a dead end and would be grateful for a few tips.

If I can’t get my local test and development system to work, then of course I won’t attempt the migrations.
Sincerely, MArko

Ps.: I was too curious and installed MariaDB and NGNIX in parallel for a new production instance on a vServer (KVM / Debian 12).
There I was able to access phpMyAdmin immediately.