Magento 2 admin url nie działa, a załadowany frontend jest cały niechlujny

30

Adres URL administratora pokazuje błąd 404 po zainstalowaniu Magento 2 na serwerze Wamp, a projekt interfejsu jest cały niechlujny, a css nie jest z nim powiązany.

Frontend error:

wprowadź opis zdjęcia tutaj

Arun Pal
źródło

Odpowiedzi:

64

Przede wszystkim zastosuj odpowiednie uprawnienia, włącz apache rewrite_modulei odśwież serwer apache.

chmod -R 777 /var/www/html/MAGENTO_2_ROOT_DIRECTORY/

sudo a2enmod rewrite

sudo service apache2 restart

W przypadku niechlujnego interfejsu uruchom następujące polecenie z katalogu głównego Magento:

php bin/magento setup:static-content:deploy

Teraz wyczyść varkatalog oprócz .htaccesspliku i sprawdź admin. Jeśli otrzymasz stronę 404, może to oznaczać problem Symlink. Zrób zdjęcie, edytuj apache configplik

sudo gedit /etc/apache2/apache2.conf

i zamień ten kod:

<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride none
Require all granted

z

<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted

Uwaga: zmieniono AllowOverride nonenaAllowOverride All

Teraz uruchom ponownie apache sudo service apache2 restarti sprawdź administratora. To powinno naprawić problem administratora 404.

Upewnij się także, że nie pozostawiasz /app/etc/katalogu do zapisu

Anil Suthar
źródło
1
To działało dla mnie, tylko że nie zmieniłem uprawnień do 777 na wszystko. Upewnij się, że nie zostawiasz / app / etc / writeable
David Wilkins
@DavidWilkins: Cieszę się, że to pomaga, doceniam twój punkt widzenia. Zaktualizowałem moją odpowiedź
Anil Suthar
1
Dzięki, działało! Najpierw popełniłem błąd i zmieniłem niewłaściwy AllowOverride. Tylko upewnij się, że to ten pod<Directory /var/www/>
marshy101
Działa jak urok. :)
dhruvvyas90
Działa idealnie! dlaczego nie została zaakceptowana jako odpowiedź?
Kul
4

ROZWIĄZANIE # 1 (JEŚLI CHCESZ EDYTOWAĆ PLIK XML)

Chciałbym, abyś pobrał plik Magento 2 zip magentocommerce.com/download, utworzył nowy plik db w phpmyadmin , rozpakował plik zip w folderze htdocs . Zainstaluj Magento 2, ale nie używaj localhost, użyj 127.0.0.1 w adresie URL sklepu i administracyjnym. Po udanej instalacji NIE uruchamiaj magento.

Teraz wyczyścimy / usuniemy pamięci podręczne i sesje Magento 2. Przejdź do następujących ścieżek i usuń wszystko:

ROOT > var > cache > *DELETE ALL*
ROOT > var > page_cache > *DELETE ALL*
ROOT > var > session > *DELETE ALL*

Gdy Magento 2 nie jest w trybie produkcyjnym, spróbuje utworzyć dowiązania symboliczne dla niektórych zasobów statycznych na serwerze lokalnym. Musimy zmienić to zachowanie Magento 2, przechodząc do edycji ROOT > app > etc > di.xmlpliku. Otwórz di.xmlw swoim ulubionym edytorze kodu, znajdź virtualType name="developerMaterialization"sekcję. W tej sekcji poniżej znajdziesz element, <item name="view_preprocessed" xsi:type="object">który należy zmodyfikować. Możesz to zmienić, zmieniając następującą treść:

Magento\Framework\App\View\Asset\MaterializationStrategy\Symlink

Do:

Magento\Framework\App\View\Asset\MaterializationStrategy\Copy

Teraz ostatni krok, usuń również stare pliki wygenerowane w ROOT > pub > static > DELETE ALL EXCEPT .HTACCESS

Osobiście wypróbowałem to na moim hoście lokalnym przy użyciu MAMP, EasyPHP DevServer, Xampp i Wampp i pomyślnie zainstalowałem i korzystałem z Magento 2. Aby uzyskać więcej informacji, odwiedź ten link: Magento 2 CSS i JavaScript nie ładują się z właściwego folderu

ROZWIĄZANIE # 2

Zainstaluj Composer. Teraz chciałbym, abyś pobrał plik Magento 2 zip magentocommerce.com/download, utworzył nowy plik db w phpmyadmin , rozpakował plik zip w folderze htdocs . Zainstaluj Magento 2, ale nie używaj localhost, użyj 127.0.0.1 w adresie URL sklepu i administracyjnym. Po udanej instalacji NIE uruchamiaj magento.

Teraz zweryfikujemy instalację Composer, Wdróż statyczną zawartość, wyczyść / opróżnij pamięć podręczną Magento i ponownie zindeksuj bloki Magento 2. Aby wykonać wszystkie powyższe czynności, naciśnij KLAWISZ WINDOWS + R, aby otworzyć okno dialogowe RUN i wpisz „cmd”, aby otworzyć wiersz polecenia.

Wpisz „ cd PATH_TO_YOUR_MAGENTO2_FILES ”, aby wejść do katalogu ROOT Magento 2.

Teraz, aby zweryfikować instalację Kompozytora w powyższym katalogu, wpisz „ instalacja kompozytora ”.

Jeśli w tym kroku wystąpi błąd, sprawdź instalację programu Composer

W tym kroku konfigurujemy zawartość statyczną do wdrożenia w naszym sklepie Magento. Aby to zrobić, wpisz „ php bin / magento setup: static-content: deploy ”.

Jeśli pojawi się jakikolwiek błąd, sprawdź swoją zmienną środowiskową PHP.EXE i PHP.INI

Wyczyść / opróżnij pamięć podręczną Magento, wpisując „ php bin / magento cache: flush ” w CMD.

I na koniec, do Reindex Magento Static Blocks wpisz „ php bin / magento indexer: reindex ”.

Skończyłeś z udaną instalacją Magento 2.

Fayyaz Khattak
źródło
Odpowiedź została edytowana.
Fayyaz Khattak,
# 1 dla mnie nie działa, Magento 2.1.0. Wydaje się, że działa, jeśli dodam segment index.php do adresu URL
Codium
# 2 również nie działa :(
Codium
1
@drupality sprawdź ten artykuł i sprawdź, czy brakuje czegoś innego: magenticians.com/fix-broken-magento-2-installation
Fayyaz Khattak
przeczytaj, że wciąż nie ma szczęścia, coś jest nie tak z najnowszą wersją Magento.
Poważny
4

otwórz terminal i przejdź do katalogu głównego Magento

 $ cd / var / www / html / magento2 
Krok 1.

$ php bin / magento setup: static-content: deploy

Krok 2.

$ php bin / magento indexer: reindex

Krok 3.

upewnij się, że apache „rewrite_module” jest włączony, a następnie zrestartuj serwer

$ sudo a2enmod przepisz && sudo service apache2 restart

Krok 4.

$ chown -R www-data: www-data / var / www / html / magento2 

Krok 5.

 $ chmod -R 777 / var / www / html / magento2 /

Krok 6.

usuń folder pamięci podręcznej w var / cache

http://gotechnies.com/css-javascript-files-loading-magento-2-installation/

Arvind
źródło
Zawsze działa :)
aman tilak
4

Naprawiono ten sam napotkany problem.

jak wspomniano powyżej, uruchom polecenie php bin/magento setup:static-content:deployw katalogu instalacyjnym Magento 2 za pośrednictwem terminala i daj pozwolenie.

Po stronie administratora jest to błąd (404), ponieważ:

<Directory "/var/www/html">
    AllowOverride  all
</Directory>` 

nie był obecny w końcu pliku /etc/apache2/sites-available/000-default.confprzed </VirtualHost>. Upewnij się również, że mod_rewritejest włączony, wprowadzając polecenie:

a2enmod rewrite

Dodano tę linię i zrestartowałem apache2. Może teraz uzyskać dostęp do administratora. mam nadzieję, że to pomoże.

RT
źródło
Jak mogę to zrobić w hostingu na żywo? Zrobiłem to w moim lokalnym hoście.
abu abu
3

Zainstalowałem magento2 (na Xampp Win7) z kompozytorem:

1.git clone https://github.com/magento/magento2/tree/master
2.cd magento2
3.git checkout master
4.composer install
5.php bin/magento sampledata:deploy
6.composer update

następnie zainstalowałem magento2 z instalatorem internetowym i dostałem błąd 404 (nie znaleziono strony) na obu stronach zaplecza. potem otworzyłem magento2 \ app \ etc \ di.xml i usunąłem ten wiersz

<item name="view_preprocessed" xsi:type="object">Magento\Framework\App\View\Asset\MaterializationStrategy\Symlink</item>

usunąłem również env.php i ponownie wykonałem instalację internetową po tym, jak front-end i back-end działa dobrze :)

Vvvaida
źródło
3

biegać

bin\magento setup:static-content:deploy
Pradeep Kumar
źródło
nie zapomnij też pozwolenia. Dla mnie biegnę potem: chmod -R 777 *
redochka
3

Aby UBANTU OS magento Frontend działało, wystarczy przejść do katalogu magento i napisać to polecenie sudo bin/magento setup:static-content:deploy

Abdul Kadir
źródło
3
  1. Usuń wszystkie pliki z folderu pub-> static i fire upgrade i uruchom polecenie, aby po raz kolejny folder i pliki były widoczne w folderze pub-> static, a następnie otwórz panel administracyjny lub interfejs. To działa dla mnie.

  2. Jeśli nadal nie otrzymujesz, usuń wszystkie pliki i folder z folderu var-> generation i ponownie uruchom aktualizację PHP i uruchom polecenie i sprawdź, czy administrator i interfejs są poprawnie widoczne.

Nidhi
źródło
2

Przechodzisz do katalogu install magento2. Następnie używasz polecenia w terminalu: bin/magento setup:static-content:deployi ustawiając uprawnienia do pub, varfolderu, masz 770 uprawnień

Thao Pham
źródło
2

Wystarczy otworzyć

MAGENTO_ROOT / app / etc / di.xml

i zamień poniżej kodu formularza numer wiersza 574

<item name="view_preprocessed" xsi:type="object">Magento\Framework\App\View\Asset\MaterializationStrategy\Symlink</item>

DO

<item name="view_preprocessed" xsi:type="object">Magento\Framework\App\View\Asset\MaterializationStrategy\Copy</item>

Mitul
źródło
2

Najprostszym rozwiązaniem jest adres URL administratora

w podstawowej tabeli konfiguracji zmień wartość dla web / seo / use_rewrites na 0 (od 1 do 0) i wszystkie zmienne w folderze cache

Drugie narzędzie do wyłączania administrowania wersjami formularza

Jak wyłączyć wersjonowanie plików statycznych:

Jeśli nie chcesz używać wersji plików statycznych, możesz wyłączyć tę funkcję w obszarze administracyjnym Magento:

config

Można zmienić to ustawienie dla zakresu domyślnego za pomocą następującego zapytania MySQL :

INSERT INTO 'core_config_data' ('path', 'value') 
    VALUES ('dev/static/sign', 0) 
    ON DUPLICATE KEY UPDATE value = 0;

Następnie wykonaj następne polecenie, aby wyczyścić pamięć podręczną konfiguracji:

bin/magento cache:clean config
Surendra Kumar Ahir
źródło