🢂Przeniesienie WP na inny serwer (za pomocąCLI)

Przeniesienie WP na inny serwer (CLI)

Przeniesienie WP na inny serwer (CLI)

Aby przenieść stronę WordPress z jednego serwera na inny, używając tylko narzędzi CLI (Command Line Interface), możesz wykonać poniższe kroki.

Krok 1

Zaczynamy od zrobienie kopii zapasowej bazy danych na serwerze źródłowym. Wynikiem tego zadania jest plik backup_YYYY_MM-DD_HMS.sql (np. backup_2025_01-30_123456.sql).

wp db export "backup_$(date +%Y_%m-%d_%H%M%S).sql"

Krok 2

Zaktualizuj adresy URL w bazie danych. Celowo pomijamy kolumnę guid, ponieważ jest to unikalny identyfikator wpisu, który nie powinien być zmieniany. --all-tables pozwala na zaktualizowanie adresów URL w wszystkich tabelach. Oczywiście old-domain.com i new-domain.com należy zastąpić odpowiednimi adresami URL :). Pamiętaj aby nie dodwawać http:// lub https:// przed adresem URL.

wp search-replace 'old-domain.com' 'new-domain.com' --skip-columns=guid --all-tables

następne polecenie pozwoli nam zaktualizować adresy URL w bazie danych z http:// na https:// gdyby pojawiły się błędy w wersji dev.

wp search-replace 'http://new-domain.com' 'https://new-domain.com' --skip-columns=guid --all-tables

wyniki powinien być podobny do tego:

+------------------------------+-----------------------+--------------+------+
| Table                        | Column                | Replacements | Type |
+------------------------------+-----------------------+--------------+------+
| wp_actionscheduler_actions   | hook                  | 0            | SQL  |
| wp_actionscheduler_actions   | status                | 0            | SQL  |
| wp_actionscheduler_actions   | args                  | 0            | SQL  |
| wp_actionscheduler_actions   | schedule              | 0            | PHP  |
| wp_actionscheduler_actions   | extended_args         | 0            | SQL  |
| wp_actionscheduler_groups    | slug                  | 0            | SQL  |
                                    ...
| wp_actionscheduler_logs      | message               | 0            | SQL  |
| wp_postmeta                  | meta_key              | 0            | SQL  |
| wp_postmeta                  | meta_value            | 13           | PHP  |
| wp_posts                     | post_content          | 20           | SQL  |
| wp_posts                     | post_title            | 0            | SQL  |
| wp_posts                     | post_excerpt          | 0            | SQL  |
                                    ...
+----------------------------+-----------------------+--------------+------+
Success: Replaced 33 of 1000 items.

gdzie 33 to liczba zastąpionych wpisów.

Krok 3

Robimy zrzut bazy danych na serwerze źródłowym (teraz ze zaktualizowanymi adresami URL).

wp db export "bazadanych_$(date +%Y_%m-%d_%H%M%S).sql"

Krok 4

Wskazówka: Do przeniesienia plików możesz użyć programów takich jak FileZilla, WinSCP czy Cyberduck.

Aby przesłać pliki WordPress na serwer FTP za pomocą ncftp, postępuj zgodnie z poniższymi krokami. Zakładając, że masz dostęp do serwera FTP (w tym przypadku ftp.slackware.com), poniżej opisuję cały proces przesyłania plików przy użyciu narzędzia ncftp.

Zainstaluj ncftp na Debianie

sudo apt update
sudo apt install ncftp
  1. Połączenie z serwerem FTP

Użyj komendy ncftp do połączenia się z serwerem FTP. Na przykład:

ncftp -u ftpuser -p qwe123 ftp.slackware.com

Po uruchomieniu tej komendy powinieneś być połączony z serwerem FTP. Jeśli połączenie jest udane, powinieneś zobaczyć prompt ncftp>.

  1. Utworzenie katalogu

Po pomyślnym połączeniu się z serwerem, użyj komendy mkdir, aby utworzyć nowy katalog. Na przykład:

mkdir /domains/jakasdomena.pl/public_html2

Ta komenda utworzy katalog public_html2 w bieżącym katalogu na serwerze FTP.

  1. Sprawdzanie katalogu

Aby upewnić się, że katalog został utworzony, użyj komendy ls:

ls

Komenda ta powinna wyświetlić listę plików i katalogów w bieżącym katalogu na serwerze FTP, w tym nowo utworzony katalog public_html2.

  1. Przesyłamy wszystkie pliki z katalogu Załóżmy, że chcesz przesłać wszystkie pliki z katalogu ~/www/wordpress na serwer FTP do katalogu /domains/jakasdomena.pl/public_html2. Oto jak może wyglądać pełny proces:

Przejdź do katalogu lokalnego, gdzie znajdują się pliki WordPressa:

lcd ~/www/wordpress

Przejdź do katalogu na serwerze FTP, gdzie chcesz przesłać pliki:

cd /public_html2

Prześlij wszystkie pliki i katalogi:

mput -R *

W konsoli zobaczysz coś takiego:

...
wp-admin/network/upgrade.php:                            4.85 kB   99.90 kB/s
wp-admin/network/settings.php:                          21.46 kB  264.61 kB/s
wp-admin/network/site-info.php:                          7.59 kB  154.36 kB/s
wp-admin/network/about.php:                            245.00 B    5.13 kB/s
wp-admin/network/user-new.php:                           5.12 kB  105.64 kB/s
wp-admin/network/freedoms.php:                         251.00 B    5.07 kB/s
wp-admin/network/menu.php:                               4.63 kB   95.61 kB/s
wp-admin/network/site-settings.php:                      5.49 kB  140.72 kB/s
wp-admin/network/update-core.php:                      253.00 B    5.34 kB/s
wp-admin/network/site-users.php:                        10.82 kB  225.11 kB/s
wp-admin/network/plugins.php:                          249.00 B    6.44 kB/s
wp-admin/network/theme-install.php:                    374.00 B    7.52 kB/s
wp-admin/network/plugin-install.php:                   377.00 B    7.90 kB/s
wp-admin/network/site-new.php:                           9.35 kB  198.85 kB/s
wp-admin/network/index.php:                              2.84 kB   58.57 kB/s
wp-admin/network/site-themes.php:                        6.71 kB  134.04 kB/s
wp-admin/network/credits.php:                          249.00 B    5.20 kB/s
wp-admin/network/sites.php:                             13.26 kB  261.88 kB/s
wp-admin/network/update.php:                           450.00 B    9.37 kB/s
wp-admin/network/profile.php:                          254.00 B    5.32 kB/s
wp-admin/network/users.php:                              9.28 kB  235.02 kB/s
wp-admin/network/plugin-editor.php:                    266.00 B    5.55 kB/s
...

Zakończ połączenie:

quit

Podsumowując:

Aby przesłać pliki WordPress na serwer FTP za pomocą ncftp, wykonaj następujące kroki:

  • Połącz się z serwerem FTP za pomocą ncftp -u [użytkownik] -p [hasło] [adres_serwera].
  • Użyj komendy lcd, aby przejść do katalogu lokalnego.
  • Użyj komend cd i mput/put, aby przesłać pliki.
  • Zakończ połączenie komendą quit.