A A A

Jak skopiować serwis Joomla! na hosting? cz. 1

W moich dwóch wcześniejszych artykułach: Joomla! 1.5 – instalacja i konfiguracja, Joomla! 1.7 – instalacja i konfiguracja, starałem się pomóc Tobie zainstalować i wstępnie skonfigurować CMS Joomla! (edycja 1.5 i 1.7) wykorzystując do tego Twój własny komputer. Jeżeli udało się Tobie wszystko zrobić według moich wskazówek, to posiadasz już swój działający i wstępnie skonfigurowany serwis WWW. Problem polega na tym, że tylko Ty możesz go sobie oglądać ;-)

Jeżeli chciałbyś, aby Twój serwis dostępny był dla wszystkich internautów na całym świecie, musisz skopiować swój serwis na serwer, który będzie czynny 24 godziny na dobę. Nie sądzę, aby Twój komputer nadawał się do tego, dlatego będziesz musiał poświęcić chwilę czasu na wybór firmy, której powierzysz to zadanie.

Jeżeli nie masz zielonego pojęcia, czym się kierować i gdzie szukać firmy hostingowej, zapoznaj się z moimi artykułami: Wybór domeny, Hosting – jaki trensfer?

Niezależnie od Twojego wyboru, działania jakie musisz podjąć, aby skopiować swój serwis Jooma! na serwery firmy hostingowej są bardzo podobne. Ja pokażę Tobie jakie czynności musisz wykonać aby skopiować swój serwis z dysku komputera lokalnego na hosting firmy Home.pl.

Jest kilka metod, za pomocą których możesz wykonać to zadanie. W tym artykule pokażę Tobie najbardziej podstawową: kopiowanie ręczne.

Co będzie potrzebne?

  • Klient FTP -polecam doskonały FileZilla, który możesz pobrać w wersji portable (nie wymaga instalacji) pod adresem: http://portableapps.com/apps/internet/filezilla_portable. Program jest rozpowszechniany na licencji GPL, więc możesz korzystać z niego bez żadnych ograniczeń całkowicie za darmo :-)
  • Nazwa użytkownika i hasło do panelu administracyjnego Twojego hostingu;
  • Nazwa użytkownika i hasło do serwera FTP firmy hostingowej;
  • Nazwa bazy danych i użytkownik oraz hasło dostępu do tej bazy danych;

Jeżeli nie posiadasz jeszcze danych dotyczących bazy danych, to się nie martw, zrobimy co należy później - krok po kroku.

Krok 1 Konfiguracja programu FileZilla

Jeżeli nie posiadasz programu FileZilla, to możesz go pobrać wpisując do paska adresu Twojej przeglądarki poniższy adres: http://portableapps.com/apps/internet/filezilla_portable

Po uruchomieniu programu możesz użyć opcji Szybkie łączenie, która przydaje się, kiedy potrzebujesz połączyć się ze swoim serwerem FTP korzystając np. z komputera poza domem u znajomego, w szkole lub na uczelni. Pamiętaj wówczas, aby po zakończeniu połączenia wyczyścić historię połączeń.

Konfiguracja klienta FTP - FileZilla - pasek szybkiego połaczeniaJeżeli chcesz mieć na stałe wpisane dane logowania do serwera wybierz z menu: Plik pozycję Menadżer stron, lub kliknij ikonkę Otwórz Menadżera Stron, domyślnie znajdującą się pod menu. Możesz także użyć skrótu klawiaturowego: CTRL+S.

konfiguracja filezilla 02 

konfiguracja filezilla 03 

W oknie Menadżer stron kliknij przycisk Nowy adres i wpisz nazwę, którą będziesz identyfikował właśnie z tym serwerem, np.: FTP-Home.pl

W polu Serwer wpisz adres serwera FTP. W przypadku Home.pl nazwa tworzona jest z nazwy konta i nazwy firmy, np.: jakasnazwa.home.pl

Z listy Protokół wybierz Ftp – protokół transferu plików, natomiast w pozycji Szyfrowanie wybierz Użyj zwykłego FTP. Z listy Typ logowania wybierz pozycję Normalna. W polu Użytkownik wpisz nazwę użytkownika uprawnionego do logowania się do serwera. W przypadku Home.pl nazwa jest taka sama jak nazwa konta, chyba, że sam utworzyłeś nowego użytkownika, który będzie miał uprawnienia do FTP.

Po wpisaniu wszystkich niezbędnych danych kliknij przycisk Połącz.

FileZilla - Menadżer Stron

Jeżeli wszystkie podane przez Ciebie dane są prawidłowe program powinien zalogować się do Twojego serwera FTP i po prawej stronie powinieneś zobaczyć foldery i pliki na serwerze: 

FileZilla - zalogowanie do serwera FTP

Krok 2. Kopiowanie plików z komputera na hosting

Okno programu FileZilla podzielone jest na klika mniejszych, ale nie czas teraz na dokładne omawianie funkcji oraz poszczególnych okienek programu. Generalnie najczęściej po prawej stronie masz wygląd z zawartością serwera FTP a po lewej masz wygląd z zawartością Twojego komputera.

Wybierz po lewej stronie folder, w którym obecnie znajdują się pliki z zainstalowanym CMS Joomla! Jeżeli przenosisz serwis powstały na bazie artykułu Joomla! 1.7 – instalacja i konfiguracja, to powinieneś wszystkie pliki mieć w lokalizacji: Dysk:\xampp\htdocs\moja_strona_1-7. Zaznacz wszystkie pliki w tym folderze (CTRL+A), następnie kliknij prawym klawiszem myszy i wybierz opcję Wyślij lub przeciągnij myszką z jednego okna do drugiego. W zależności od szybkości łącza internetowego jakim dysponujesz po kilku lub kilkudziesięciu minutach wszystkie pliki powinny być skopiowane.

Krok 3. Wykonanie kopii bazy danych

Uruchom XAMPP Launcher'a i kliknij przycisk Start w sekcji Modules dla pozycji Apache i Myql - jeżeli używasz pakietu XAMPP ;-)

Wpisz teraz w pasku adresu swojej przeglądarki: localhost/phpmyadmin. Kliknij na liście znajdującej się po lewej stronie okna nazwę bazy danych, którą założyłeś podczas instalacji Joomla! Jeżeli korzystałeś z moich wskazówek zawartych w artykule: Joomla! 1.7 – instalacja i konfiguracja, to powinieneś kliknąć w nazwę: mojastrona-j17:

phpMyAdmin - wykonanie kopii zapasowej bazy danych krok 1

Powinieneś wówczas zobaczyć okno podobne do pokazanego poniżej.

phpMyAdmin - wykonanie kopii zapasowej bazy danych krok 2

Kliknij teraz zakładkę: Eksport. Sprawdź, czy masz zaznaczone takie opcje jak na rysunku poniżej:

phpMyAdmin - wykonanie kopii zapasowej bazy danych krok 2 Teraz kliknij przycisk Wykonaj. Po chwili powinieneś otrzymać informację, że plik jest do pobrania lub otwarcia. Zapisz go w dowolnej lokalizacji, np. na pulpicie.

Krok 4. Utworzenie bazy danych na hostingu

Utworzenie bazy danych może wyglądać różnie na różnych hostingach. W przypadku Home.pl  nie możesz dowolnie definiować nazwy bazy. Nazwy baz tworzone są na podstawie nazwy konta na Home.pl. Jeżeli utworzyłeś konto o nazwie jakasnazwa, to pierwsza baza danych zostanie utworzona pod nazwą jakasnazwa. Kolejne bazy będą tworzone poprzez dodanie do nazwy kolejnych numerów, np.: jakasnazwa1, jakasnazwa2 itd.

Ok, zaloguj się do swojego panelu administracyjnego na hostingu. W przypadku Home.pl po zalogowaniu się wybierz opcję Dodaj bazę SQL.

Tworzenie nowej bazy danych na hostingu home.pl - krok 1 Wprowadź dwa razy hasło do nowoutworzonej bazy danych. Dobrym pomysłem jest w polu Opis bazy danych wpisać krótki opis do czego ta baza służy. Być może nie planujesz obecnie tworzyć kolejnych serwisów opartych na Joomla! lub innych współpracujących z bazami danych, ale jeżeli w przyszłości stwierdzisz, że chciałbyś posiadać kolejne serwisy, będziesz musiał utworzyć dla nich kolejne bazy danych. Po jakimś czasie może się okazać, że masz powiedzmy 10 serwisów i bazy danych o nazwach: jakasnazwa, jakasnazwa1, … jakasnazwa10. Czy będziesz pamiętać, która baza współpracuje z którym serwisem? ;-)

Tworzenie nowej bazy danych na hostingu home.pl - krok 2 Zakładam, że masz już utworzoną swoją bazę danych. Dostęp do niej może wyglądać różnie na różnych hostingach, natomiast w przypadku Home.pl wygląda tak: https://jakasnazwa.home.pl/sql. Oczywiście zamiast jakasnazwa musisz wpisać swoją nazwę konta na Home.pl.

Spróbuj teraz zalogować się do swojej bazy danych na Twoim hostingu. Przeglądarka powinna wyświetlić monit o wpisanie nazwy użytkownika i hasła dostępu do bazy danych. Wpisz prawidłowe dane. Jeżeli korzystasz z hostingu Home.pl powinieneś zobaczyć ekran podobny to tego pokazanego poniżej:

Import bazy danych na home.pl - Krok 1 Kliknij na liście po lewej stronie nazwę swojej bazy danych a następnie, po załadowaniu się strony kliknij zakładkę Import. Kliknij przycisk Przeglądaj a następnie wskaż zapisany wcześniej plik sql. W moim przypadku będzie to plik mojastrona-17.sql

Import bazy danych na home.pl - Krok 2Teraz kliknij przycisk Wykonaj. Jeżeli wszystko przebiegło pomyślnie powinieneś otrzymać komunikat o prawidłowym wykonaniu operacji:

Import bazy danych na home.pl - Krok 3

Krok 5. Zmiana wpisów w pliku configuration.php

Jeżeli teraz spróbujesz uruchomić swoją stronę na zdalnym hostingu, to powinieneś zobaczyć taki komunikat:

Próba otwarcia strony na zdalnym hostingu - komunikatW ostatnim kroku, za pomocą klienta FTP musisz zalogować się na serwer FTP i edytować plik configuration.php. Zmiany te muszą zostać wykonane, ponieważ instalując CMS Joomla! na swoim komputerze utworzyłeś nazwę bazy danych o innej nazwie niż masz teraz w hostingu. Poza tym nazwa użytkownika i hasło dostępu do bazy danych również zostały zmienione.

Zaloguj się na swój hosting używając Menadżera połączeń w programie FTP (File Zilla). Następnie kliknij prawym przyciskiem myszy nazwę pliku configuration.php i wybierz opcję Podgląd/Edycja. Jeżeli nie zdefiniowałeś wcześniej innego programu do edycji plików, zawartość pliku powinna zostać wyświetlona w notatniku systemowym.

Odszukaj następujące wpisy:

public $user = 'root';
zastąp wpisując:
public $user = 'nazwa_uzytkownika_bazy_danych_na_hostingu'
;

public $password = '';
zastąp wpisując:
public $password = 'haslo_dostepu_do_bazy_danych_na_hostingu';

public $db = 'mojastrona-j17';
zastąp wpisując:
public $db = 'nazwa_bazy_danych_na_hostingu';

Zamknij plik zapisując zmiany. W programie FileZilla powinieneś zobaczyć okienko z pytaniem, czy zapisać te zmiany na zdalnym hostingu.

Zapis edytowanego pliku w programie FileZilla

Potwierdź zmiany klikając przycisk Tak.

To byłoby na tyle w przypadku większości hostingów :-)

Jeżeli jednak masz wykupiony hosting w Home.pl, to musisz jeszcze edytować plik path.php, który znajduje się w lokalizacji: /libraries/joomla/filesystem. Więcej na temat współpracy CMS Joomla z hostingiem Home.pl przeczytasz w artykułach: Joomla i MySQL na home.pl oraz Joomla! 1.6 na home.pl.

Edytuj go podobnie jak plik configuration.php i odszukaj w wierszu 174 funkcję o nazwie clean.

Cała funkcja wygląda tak:

public static function clean($path, $ds = DIRECTORY_SEPARATOR)
    {
        $path = trim($path);

        if (empty($path)) {
            $path = JPATH_ROOT;
        } else {
            // Remove double slashes and backslahses and convert all slashes and backslashes to DS
            $path = preg_replace('#[/\\\\]+#', $ds, $path);
        }

        return $path;
    }

Należy zmieńić wpis: $path = JPATH_ROOT; na: $path = '/';

Teraz funkcja clean powinna wyglądać tak:

public static function clean($path, $ds = DIRECTORY_SEPARATOR)
    {
        $path = trim($path);

        if (empty($path)) {
            $path = '/';
        } else {
            // Remove double slashes and backslahses and convert all slashes and backslashes to DS
            $path = preg_replace('#[/\\\\]+#', $ds, $path);
        }

        return $path;
    }

Teraz możesz już pochwalić się swoim serwisem w Internecie ;-)

 

Chcesz otrzymywać powiadomienia o moich kolejnych wpisach lub projektach?
Wpisz swoje imię oraz adres e-mail a następnie kliknij "ZAPISZ MNIE"

Twoje imię:


Adres email:


Jak skopiować serwis Joomla! na hosting? cz. 2
Mam dla Ciebie legendarną książkę za FREE!
 

Komentarze 18

Gość - Andrzej w środa, 14 marzec 2012 09:04

witam
Sławku przeniosłem całą zawartość ftp na drugi hosting, zrobiłem export bazy z yoyo, ale problem pojawia się podczas jej importu do cba. Pierwszy problem pojawił się postaci Błąd #1044 - Access denied for user.... Z tym sobie poradziłem, znalazłem rozwiązanie. Jednak po tej zmianie pojawia się następny
błąd MySQL zwrócił komunikat: Dokumentacja
#1050 - Table 'bak_banner' already exists
Jak uda mi się ją poprawnie zaimportować to potem nie będzie już żadnych problemów, tylko mała modyfikacja w configuraton.php.
Jeśli spotkałeś się z podobną sytuacją i wiesz jak rozwiązać ten problem to prosiłbym o poradę
Andrzej

witam Sławku przeniosłem całą zawartość ftp na drugi hosting, zrobiłem export bazy z yoyo, ale problem pojawia się podczas jej importu do cba. Pierwszy problem pojawił się postaci Błąd #1044 - Access denied for user.... Z tym sobie poradziłem, znalazłem rozwiązanie. Jednak po tej zmianie pojawia się następny błąd MySQL zwrócił komunikat: Dokumentacja #1050 - Table 'bak_banner' already exists Jak uda mi się ją poprawnie zaimportować to potem nie będzie już żadnych problemów, tylko mała modyfikacja w configuraton.php. Jeśli spotkałeś się z podobną sytuacją i wiesz jak rozwiązać ten problem to prosiłbym o poradę Andrzej
Sławomir Pieszczek (website) w środa, 14 marzec 2012 09:21

Andrzej, proponuję, abyś usunął wszystkie tabele z bazy na cba - CHYBA, ŻE NA TEJ BAZIE OPIERA SIĘ INNY SERWIS!

Następnie jeszcze raz zaimportuj plik z kopią bazy z yoyo!

Komunikat, który się Tobie wyświetla informuje, że tabela, którą system próbuje utworzyć już istnieje w Twojej bazie! Zresztą jest to kopia tabeli, więc na dobrą sprawę można by było tabele rozpoczynające się na bak_ pominąć ;-)

Andrzej, proponuję, abyś usunął wszystkie tabele z bazy na cba - CHYBA, ŻE NA TEJ BAZIE OPIERA SIĘ INNY SERWIS!Następnie jeszcze raz zaimportuj plik z kopią bazy z yoyo!Komunikat, który się Tobie wyświetla informuje, że tabela, którą system próbuje utworzyć już istnieje w Twojej bazie! Zresztą jest to kopia tabeli, więc na dobrą sprawę można by było tabele rozpoczynające się na bak_ pominąć ;-)
Gość - Andrzej w środa, 14 marzec 2012 09:31

tam nie ma innego serwisu. Fizycznie ta baza jest pusta, ponieważ tylko ją założyłem. Napisz mi, co mam usunąć z bazy.
pozdrawiam

tam nie ma innego serwisu. Fizycznie ta baza jest pusta, ponieważ tylko ją założyłem. Napisz mi, co mam usunąć z bazy. pozdrawiam
Sławomir Pieszczek (website) w środa, 14 marzec 2012 09:48

Sprawdź, czy na pewno nie masz tam obecnie żadnych tabel! Jeżeli masz, to je wszystkie usuń!
To co jeszcze możesz zrobić, to wyedytować (proponuję za pomocą np. Notepad++) plik z kopią bazy danych (plik *.sql) i sprawdzić, czy nie masz podwójnych wpisów typu CREATE TABLE nazwa_tabeli.
Wydaje mi się, że masz przy najmniej jeden taki podwójny wpis dotyczący tabeli bak_banner

Sprawdź, czy na pewno nie masz tam obecnie żadnych tabel! Jeżeli masz, to je wszystkie usuń! To co jeszcze możesz zrobić, to wyedytować (proponuję za pomocą np. Notepad++) plik z kopią bazy danych (plik *.sql) i sprawdzić, czy nie masz podwójnych wpisów typu CREATE TABLE nazwa_tabeli. Wydaje mi się, że masz przy najmniej jeden taki podwójny wpis dotyczący tabeli bak_banner
Gość - Andrzej w środa, 14 marzec 2012 17:54

Sławku, cały komunikat jest następujący
Błąd

Zapytanie SQL:

-- -------------------------------------------------------- -- -- Struktura tabeli dla `bak_banner` -- CREATE TABLE `bak_banner` ( `bid` int(11) NOT NULL auto_increment, `cid` int(11) NOT NULL default '0', `type` varchar(90) NOT NULL default 'banner', `name` text NOT NULL, `alias` varchar(255) NOT NULL default '', `imptotal` int(11) NOT NULL default '0', `impmade` int(11) NOT NULL default '0', `clicks` int(11) NOT NULL default '0', `imageurl` varchar(100) NOT NULL default '', `clickurl` varchar(200) NOT NULL default '', `date` datetime default NULL, `showBanner` tinyint(1) NOT NULL default '0', `checked_out` tinyint(1) NOT NULL default '0', `checked_out_time` datetime NOT NULL default '0000-00-00 00:00:00', `editor` varchar(150) default NULL, `custombannercode` text, `catid` int(10) unsigned NOT NULL default '0', `description` text NOT NULL, `sticky` tinyint(1) unsigned NOT NULL default '0', `ordering` int(11) NOT NULL default '0', `publ[...]

MySQL zwrócił komunikat: Dokumentacja
#1050 - Table 'bak_banner' already exists

Sławku, cały komunikat jest następujący BłądZapytanie SQL:-- -------------------------------------------------------- -- -- Struktura tabeli dla `bak_banner` -- CREATE TABLE `bak_banner` ( `bid` int(11) NOT NULL auto_increment, `cid` int(11) NOT NULL default '0', `type` varchar(90) NOT NULL default 'banner', `name` text NOT NULL, `alias` varchar(255) NOT NULL default '', `imptotal` int(11) NOT NULL default '0', `impmade` int(11) NOT NULL default '0', `clicks` int(11) NOT NULL default '0', `imageurl` varchar(100) NOT NULL default '', `clickurl` varchar(200) NOT NULL default '', `date` datetime default NULL, `showBanner` tinyint(1) NOT NULL default '0', `checked_out` tinyint(1) NOT NULL default '0', `checked_out_time` datetime NOT NULL default '0000-00-00 00:00:00', `editor` varchar(150) default NULL, `custombannercode` text, `catid` int(10) unsigned NOT NULL default '0', `description` text NOT NULL, `sticky` tinyint(1) unsigned NOT NULL default '0', `ordering` int(11) NOT NULL default '0', `publ[...]MySQL zwrócił komunikat: Dokumentacja #1050 - Table 'bak_banner' already exists
Gość
niedziela, 26 maj 2019

Zdjęcie captcha

Najnowsze komentarze

Gość - Andy SSL i Joomla! w Smarthost
03 styczeń 2019
Dzięki, jak zwykle dobra robota! Warto dodać, że instalacja certyfikatu SSL nie zapewnia bezpieczeństwa transmisji danych. To jest możliwe po wdrożeniu polityki bezpieczeństwa w firmie. Co do SSL - to...
Gość - Henryk Jak utworzyć menu poziome w szablonie protostar?
02 styczeń 2019
Robię punkt po punkcie i nie wyświetla się poziome menu Nie wiem gdzie tkwi błąd i co robię źle?Jeśli to możliwe to proszę o pomocps. posiadam książkę "Joomla! 3x" i tu również niema pomocy Pozdrawiam...
Gość - Joanna Jak utworzyć własny szablon dla Joomla! nie dotykając kodu? EF4 cz.2
09 grudzień 2018
Czy jest jakaś możliwość, żeby zmienić układ top-bar i tej linii, w której jest logo? Tam niby są flexibloki ale nie można zmienić ich szerokości, a tego potrzebuję bardzo. Jak tego dokonać???
Gość - Informatyk Tworzenie bazy danych w CPanelu na Smarthost - instalacja Joomla!
19 listopad 2018
Dziękuje za ten wpis joomla zawsze była dla mnie problematyczna
Gość - Sławomir DJ Image Slider
04 listopad 2018
co robić? Zdjęcia wyświetlają się pionowo, jedno pod drugim. Żadna zmiana w opcjach, nic nie daje??? Pomożecie?