Magento multisite a Nginx
Wiele osób ma problem z poprawną konfiguracją Nginx-a i obsługą wielu stron lub sklepów w Magento.
W praktyce jest to wyjątkowo proste. Magento domyślnie obsługuje te wersje za pomocą dwóch zmiennych.
Wiele osób ma problem z poprawną konfiguracją Nginx-a i obsługą wielu stron lub sklepów w Magento.
W praktyce jest to wyjątkowo proste. Magento domyślnie obsługuje te wersje za pomocą dwóch zmiennych.
Czasami zachodzi potrzeba stworzenia wielu stron na jednej instalacji Magento. Na szczęście Magento obsługuje w pełni zarówno multisite, multistore jak również multiview.
O co chodzi z tym podziałem, w skrócie. Każda instalacja magento może posiadać wiele stron, każda strona wiele sklepów a każdy sklep wiele widoków. Dzisiaj opiszemy w jaki sposób stworzyć osobną stronę za pomocą tej samej instalacji Magento.
Pomijamy oczywiście konfigurację po stronie serwera www i vhostów,
W panelu administracyjnym klikamy kolejno System->Configuration->Manage Stores
Następnie klikamy już istniejącą stronę “Main Website” i zmieniamy jej nazwę na “Website 1″
nazwa ta może być dowolna i powinna nam pomóc w prostej identyfikacji strony później, w polu “code” wpisujemy nazwę przy użyciu tylko małych liter i cyfr np.: “website_1″.
Da zachowania czytelności warto zmienić również nazwę naszego sklepu i jego widoku np.: “Main Website Store” zmień na “Website store 1″.
A widok “Default Store View” nazwij na przykład “English Store View”
Teraz możemy stworzyć drugą stronę
Klikamy więc „Create website” stronę nazywamy “Website 2″ a w pole kod wpisujemy “website_2″.
Podobnie dodajemy sklep klikając „Create store” i sklep nazywamy “Website store 2″ na liście rozwijanej w pozycji „Website” wybieramy naszą stronję „Website 2”.
Z widokiem sklepu postępujemy identycznie, koniecznie musimy utworzyć widok jako iż Magento wyświetla tylko widoki sklepów.
Aby osiągnąć efekt w którym nasze dwa sklepy będą dostępne za pomocą poniższych adresów url:
1) http://www.yourdomain.com/website_1
2) http://www.yourdomain.com/website_2
Musimy w głównym folderze naszej instalacji Magento stworzyć dwa foldery i nazywamy je kolejno “website_1″ and “website_2″
Kopiujemy do nich pliki .htacces and index.php z głównej instalacji Magento.
W .htaccess odnajdujemy linie “RewriteBase /” i zmieniamy ją na “RewriteBase /website_1/” in w pierwszym folderze, dla drugiego folderu “RewriteBase /” zamieniamy na “RewriteBase /website_2/”.
Następnie w obu folderach otwieramy index.php i zmieniamy w nim “$compilerConfig = ‘includes/config.php’;” na
$compilerConfig = ‘../includes/config.php’;
Zamieniamy również $mageFilename = ‘app/Mage.php’; na $mageFilename = ‘../app/Mage.php’;
Funkcję Mage::run() modyfikujemy w zależności od folderu jedną z poniższych wersji na
Mage::run(‘website_1′, ‘website’);
Mage::run(‘website_2′, ‘website’);
Przechodzimy do panelu administracyjnego System->Configuration wybieramy w panelu Current Configuration Scope: nasz sklep Website 1
Następnie modyfikujemy parametr Base URL = http://www.yourdomain.com/website_1 (to samo robimy dla strony website_2)
Od teraz nasze magento obsługuje już dwie strony, w kolejnym wpisie zaprezentujemy jak możemy zmodyfikować cenę niezależnie dla każdej z stron.