Jak przenieść moją witrynę z podfolderu do katalogu głównego?


12

Mam witrynę Joomla i jest ona zainstalowana w podfolderze na moim koncie hostingowym.

Jeśli więc chcę uzyskać dostęp do mojej witryny, muszę wpisać www.mysite.com/joomla . Chcę mieć dostęp do strony głównej mojej witryny bezpośrednio w mojej domenie www.site.com .

Jak to zrobić ?

Odpowiedzi:


14

Oto kroki wymagane do przeniesienia strony Joomla z podfolderu do katalogu głównego:

  1. Użyj klienta FTP i połącz się z kontem hostingowym za pośrednictwem FTP lub użyj Menedżera plików, który powinien być dostępny w Panelu sterowania konta hostingowego.
  2. Przejdź do folderu, w którym znajduje się Joomla (root / joomla).
  3. Znajdź plik configuration.php, pobierz i otwórz go za pomocą edytora tekstu (a nie edytora tekstu takiego jak ms word).
  4. Szukasz następujących linii:

    var $live_site = '';
    var $log_path = '/home/username/public_html/joomla/logs';
    var $tmp_path = '/home/username/public_html/joomla/tmp';
    var $ftp_root = 'public_html/joomla';
    

    Zmień na:

    var $live_site = '';
    var $log_path = '/home/username/public_html/logs';
    var $tmp_path = '/home/username/public_html/tmp';
    var $ftp_root = 'public_html';
    

Jeśli $live_sitezmienna miała wartość:
np$live_site = 'http://www.site.com/joomla';

następnie dostosuj:
$live_site = 'http://www.site.com';

  1. Zapisz plik configuration.php i prześlij go z powrotem do poprzedniej lokalizacji.
  2. Sprawdź plik o nazwie .htaccess. Jeśli jest dostępny, również go edytuj. Szukasz następującego wiersza:

    RewriteBase /joomla Zmień na: RewriteBase /

* zamiast Joomla, spodziewaj się zobaczyć nazwę podfolderu faktycznego, w którym znajduje się Joomla.

  1. Wróć do folderu głównego. Jeśli istnieją pliki i foldery starszej witryny, najlepiej jest utworzyć nowy folder, nazwać go „starą witryną” i umieścić wszystkie jego pliki w tym folderze.
  2. Teraz wszystko, co musisz zrobić, to przenieść pliki / foldery instalacji Joomla do folderu głównego.
  3. Po zakończeniu przenoszenia zaloguj się do administratora i wyczyść pamięć podręczną Joomla. Przejdź do System -> Wyczyść pamięć podręczną i wyczyść buforowane pliki.
  4. Sprawdź front-end swojej witryny.
  5. Jeśli wszystko działa poprawnie - pamiętaj, aby usunąć pliki starej witryny, jeśli nie są już potrzebne.

5

Tylko dodatkowy kawałek tutaj. Większość ludzi nie będzie musiała tego robić, ponieważ nigdy nie dotyka pliku robots.txt , jednak jeśli masz coś takiego:

User-agent: *
Disallow: /joomla/administrator/
Disallow: /joomla/bin/
Disallow: /joomla/cache/
Disallow: /joomla/cli/
Disallow: /joomla/components/
Disallow: /joomla/includes/
Disallow: /joomla/installation/
Disallow: /joomla/language/
Disallow: /joomla/layouts/
Disallow: /joomla/libraries/
Disallow: /joomla/logs/
Disallow: /joomla/modules/
Disallow: /joomla/plugins/
Disallow: /joomla/tmp/

Następnie musisz usunąć /joomlaprefiks na początku każdej ścieżki.


5

Jeśli masz dostęp do powłoki z hosta, sensowne jest również przechowywanie instalacji Joomla poza katalogiem głównym i dowiązanie symboliczne. W ten sposób możesz kontrolować źródła instalacji lub łatwo przełączać się między wieloma wersjami pomostowymi / produkcyjnymi.

Korzystanie z tego w subdomenach znacznie ułatwia proces testowania nowych wersji.


Czy mógłbyś rozwinąć więcej na ten temat? Może nowy post z pytaniami i odpowiedziami, jak to osiągnąć, może być interesujący dla wielu użytkowników.
johanpw

SE nie podobało mi się moje potencjalne tytuły tego pytania, więc będę musiał nad tym popracować, ale opracowałem ten proces w innej odpowiedzi tutaj: joomla.stackexchange.com/q/4145/58
Jeremy Proffitt

3

Najlepiej byłoby zmienić przypisany folder główny witryny w ustawieniach hostingu . Robię to, aby móc budować nowe wersje mojej witryny i zapisywać / utrzymywać przy życiu stare wersje; wszystko, co muszę zrobić, to zmienić „folder główny” mojej domeny na nowy folder za każdym razem, gdy wypuszczam nową wersję. Unikaj przekierowywania swojej witryny, algorytmu wyszukiwania Google go nie lubi.


2

Zastanawiam się, dlaczego nikt nie sugerował użycia komponentu Akeeba Backup i skryptu Akeeba Kickstart . Dla niektórych użytkowników może być łatwiejszy sposób robienia tego samego, co sugeruje FFrewin. Akeeba robi to wszystko automatycznie.

Oba są bezpłatne (w podstawowej wersji nie potrzebujesz pro). Możesz je pobrać bezpośrednio na stronie AkeebaBackup.com/download .

Wymagane kroki to:

  1. Zainstaluj Akeeba Backup
  2. Skonfiguruj Akeeba Backup, po otwarciu komponentu w Administracji Joomla dostępna jest automatyczna konfiguracja jednym kliknięciem
  3. Wykonaj kopię zapasową witryny za pomocą Akeeba Backup
  4. Pobierz kopię zapasową (plik .jpa)
  5. Prześlij kopię zapasową do nowej lokalizacji na swoim FTP (bez względu na to, czy jest to inny host, czy tylko inny folder, możesz przenieść swoją witrynę w dowolne miejsce, nawet localhost)
  6. Rozpakuj Akeeba Kickstart i prześlij plik kickstart.php w to samo miejsce, w którym przesłałeś plik .jpa
  7. W przeglądarce przejdź bezpośrednio do http: //newlocation.xy/kickstart.php
  8. Otworzy się Akeeba Kickstart, wybierz metodę bezpośrednią
  9. Przejdź do całego procesu i wypełnij wymagane pola (podobnie jak nowa instalacja Joomla)
    • Ustawienia połączenia z bazą danych (serwer, nazwa, hasło) - jeśli chcesz zachować tę samą bazę danych, którą już masz, użyj innego prefiksu tabeli
    • Ustawienia strony - ustaw nowy aktualny URL, w tym http: //, to najważniejsze. Ponadto możesz również zmienić hasło administratora i skonfigurować nowe konta FTP)
    • Po zakończeniu kliknij „usuń folder instalacyjny”
  10. To wszystko, jeśli nowa strona działa, możesz usunąć swoją witrynę w poprzedniej lokalizacji i stare tabele bazy danych (powinny mieć inny prefiks lub znajdować się w osobnej bazie danych).

Przed usunięciem poprzedniej instalacji upewnij się, że nowa naprawdę działa. Plik kopii zapasowej może być uszkodzony podczas pobierania lub w jakikolwiek inny sposób i instalacja kopii zapasowej może być niemożliwa.

Zdaję sobie również sprawę, że wygląda to na nieco bardziej skomplikowany sposób, ale tak nie jest, uważam, że jest to łatwiejsze i zwykle szybsze - kopiowanie tysięcy plików (całej Joomla) z lokalizacji FTP na komputer i przesyłanie ich do nowej lokalizacji FTP zajmuje godziny. Dzięki Akeeba możesz zacząć działać w niecałą godzinę (w zależności od wielkości strony Joomla).


Nikt nie zasugerował Akeebi, ponieważ pytanie dotyczy przeniesienia instalacji z podkatalogu w katalogu głównym tego samego hostingu.
FFrewin

Nadal możesz do tego użyć Akeeba. To tylko inna opcja.
TeeJay

1
Oczywiście jest to opcja, ale to, co opisujesz w swojej odpowiedzi, to jak podróż z Paryża do Londynu przez Tokio. Cała ta procedura jest po prostu niepotrzebna. Wspomniałeś, że możesz zacząć działać w niecałą godzinę, kiedy faktyczna procedura powinna potrwać kilka minut i nie trzeba w ogóle zadzierać z bazą danych.
FFrewin

Właściwie wolę używać Akeeba w takich sytuacjach, ponieważ skrypt instalatora Akeeba jest napisany specjalnie w celu dostosowania takich rzeczy, jak ścieżki tmp i pamięci podręcznej itp. W konfiguracji, a Ty masz dodatkową zaletę pełnej kopii zapasowej. Godzina jest procesem o wiele dłuższym niż w rzeczywistości, jeśli używasz menedżera plików Cpanel do przenoszenia plików na sam serwer. Wykonujesz kopię zapasową, która w przypadku większości witryn zajmuje nieco mniej niż 2 minuty. Przeniesienie pliku to 30 sekund, wdrożenie do roota zajmuje około minuty lub 2. I nie ma sprawdzania poszczególnych ścieżek plików do poprawienia.
Toni Marie,

Jest to możliwe rozwiązanie, ale myślę, że Akeeba Backup to przesada w przypadku łatwego procesu, który nie wymaga żadnych rozszerzeń. Korzystanie z Akeeba oznacza, że ​​musisz utworzyć kopię zapasową, pobrać ją, uruchomić kickstart i po prostu ponownie zainstalować Joomla (że tak powiem). raczej długi proces, gdy możesz po prostu przenieść folder za pomocą hostingowego menedżera plików i dostosować kilka linii w konfiguracji
Lodder

2

Jeśli chcesz przekierować swój localhost do jakiegoś podfolderu zamiast folderu głównego, takiego jak

/var/www/subfolder

Następnie musisz wykonać tę konfigurację na serwerze. otwórz plik w następującej ścieżce:

/etc/apache2/sites-enabled/000-default.conf

następnie musisz zmienić ścieżkę katalogu głównego w następujący sposób:

ServerAdmin webmaster@localhost
DocumentRoot /var/www/subfolder

Teraz, jeśli uruchomisz localhost, otworzy się plik podfolderu.


Ta odpowiedź wydaje się przydatna dla użytkowników Linuksa z serwerem Apache w określonych dystrybucjach, takich jak Ubuntu. Ponadto, jeśli katalog główny ma tylko podfolder, lepiej przenieść podfolder do katalogu głównego.
Farahmand,

0

Akeeba Backup działa dobrze. Jeśli masz poprzednią witrynę Joomla już zainstalowaną w katalogu głównym, pamiętaj o usunięciu folderów Joomla w katalogu głównym, zanim przeniesiesz nową witrynę do katalogu głównego, ponieważ możesz mieć zbłąkane niezgodne szablony itp. Z poprzedniej wersji.

Poleciłbym także udanie się do administratora cpanel-> myPHP i wyeksportowanie bazy danych do kolejnej warstwy kopii zapasowej. Plik kopii zapasowej Akeeba zawiera bazę danych, więc jest to tylko redundancja.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.