Odpowiedzi:
Oto kroki wymagane do przeniesienia strony Joomla z podfolderu do katalogu głównego:
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_site
zmienna miała wartość:
np$live_site = 'http://www.site.com/joomla';
następnie dostosuj:
$live_site = 'http://www.site.com';
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.
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ąć /joomla
prefiks na początku każdej ścieżki.
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.
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.
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:
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).
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.
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.