Magento 2 Hatası ERR_TOO_MANY_REDIRECTS


20

Magento 2 topluluk sürümünün kurulumundan sonra Magento'da yeniyim. Yönetici paneline erişemiyorum. Aşağıdaki hatayı alıyorum.

Bu web sayfasında yönlendirme döngüsü var

Hata ERR_TOO_MANY_REDIRECTS

Lütfen sorunu çözmeme yardımcı olun. Herkese teşekkürler.


Daha fazla bilgi verin. Magento'yu nasıl kurdunuz? Kurulum sırasında girdiğiniz parametreler nelerdir
Arkadii Chyzhov

XDebug'u etkinleştirdiniz mi?
Alex Paliarush

SSL kurulumunda bazı sorunlar yaşadıktan sonra aynı sorunu aldım. Sadece bunu
düzeltmek

Yanıtlar:


28

Veritabanlarını değiştirirken de aynı sorunla karşılaştım, bu cevap ERR_TOO_MANY_REDIRECTS sorunumu çözdü:

/magento//a/84756/50635

Bunu düzeltmek için lütfen Sistem -> Config -> Genel -> Web'de Yönetici'de Güvenli URL Kullan seçeneğini doğru olarak ayarlamayı deneyin .

Veya veritabanı erişimiyle aşağıdaki kayıt değerini 1 olarak değiştirin :

SELECT * FROM core_config_data where path like '%web/secure/use_in_adminhtml%';

5
Benim durumumda, değeri zaten 1, hala bu hatayı görüyorum.
kashish

1
cazibe gibi çalışır
mrtuvn

Çalışmalar, çok iyi
Vu Tran Kien

Teşekkür ederim!! Beklendiği gibi çalıştı!
MazeStricks

18

Benim durumumda, zaten var olan bir Magento 2 veritabanını içe aktarıyordum. Hatayı almamın nedeni, veritabanındaki çerez etki alanıydı. Veritabanınıza gidin ve tabloya bakın core_config_data. Adlı bir yol görmelisiniz web/cookie/cookie_domain. Alan adının Magento 2'yi yüklediğiniz alan adıyla eşleştiğinden emin olun. Ör: Üzerinde Magento 2 yüklü değilse local.dev/<magento-root> girişin web/cookie/cookie_domainolmalıdır local.dev.


4
Aynı sorunu yaşıyordum. Değeri web/cookie/cookie_domainNULL yerine etki alanı adım olarak değiştirdim, ancak yine de çalışmıyor.
kashish

1
Çok teşekkürler! Değeri "domain.local" olarak değiştirdim ve her şey çalışıyor
Nikolai Silin

çok teşekkür ederim!! benim için sorun buydu! : D
Pierre-Verthume Larivière

14

Bu yazıda magento mağaza alanınıza example.com olarak atıfta bulunuyorum. Www.example.com veya mağaza.example.com veya her neyse, uygun şekilde değiştirin.

Bu konuya yeni girdim ve işte detayları. Magento 2 2.2.2 yükleyin. Güvenli temel URL'leri başlangıçta http://example.com/ olarak yapılandırmıştım ve sunucumda letssrypt ssl sertifikamı yapılandırırken, tüm http trafiğini https'ye yönlendirme seçeneğini düşünmeden etkinleştirdim.

Bu normal bir sorun olmaz, ancak Magento biraz mizaç olabilir. Mağazamı ziyaret ettim ve SSL'im düzgün çalışıyor, ancak yöneticiye erişmeye çalışırken "ERR_TOO_MANY_REDIRECTS" bildirimi ve başarısız bir sayfa yükü aldım.

Bu sorunu düzeltmenin birkaç yolunu görüyorum ama ilk denemede işe yarayan şey bu oldu.

  1. SSH'yi sunucuya ekleyin.
  2. cd sizin magento install dir.
  3. aşağıdaki komutu çalıştırın:
    • php bin / magento yapılandırma: göster

çıktıyı görüntüleyin ve web / secure / base_url, web / secure / base_link_url & web / secure / use_in_adminhtml arayın .

Bu değerler , url seçenekleri ve web / secure / use_in_adminhtml = 1 için https://example.com/ ile yapılandırılmalıdır .

Değilse, yapılandırmanızı güncellemek için magento kurulum dizininizden aşağıdaki komutları çalıştırabilirsiniz.

  1. php bin / magento yapılandırma: duyarlı: web / secure / base_url ayarını https://example.com/
  2. php bin / magento yapılandırma: duyarlı: web / secure / base_link_url https: //example.com'u ayarla
  3. php bin / magento yapılandırma: web ayarlamak / güvenli / use_in_adminhtml 1
  4. php bin / magento önbellek: temiz

Bundan sonra, yönetici sayfanızı ziyaret edin, tarayıcı önbelleğinizi temizleyin, yeniden yükleyin ve şimdi erişiminize geri dönmelisiniz! SSL desteği ile.

Bundan sonra atacağım ilk adım, yönetici portalına tekrar giriş yapmak ve diğer beklenmedik sorunlarla karşılaşmayacağınızdan emin olmak için yapılandırma seçeneklerinizi doğrulamaktır.

Umarım bu yardım!

Size yardımcı olacak bazı Magento kaynakları:

Yapılandırma Değerlerini Ayarlama

Diğer Yapılandırma Yolları Başvurusu

Hassas ve Sisteme Özgü Referanslar


1
Teşekkürler. Ayrıca ben eflatun backend almak için devre dışı bırakmak zorunda kaldı http https için plesk tarafından ayarlanmış bir yönlendirme vardı. Not: önbelleği temizlemek burada önemli bir adımdır.
s.Daniel

11

Benim durumumda, web sitesini müşterinin sunucusundan kopyaladım ve yerel sistemime kuruyordum. Çerez / alan adını

core_config_data

masa ve sonra önbellek temizlendi, benim için çalıştı!

Ayrıca şunları da yapabilirsiniz:

"Core_config_data" tablosunda "web / cookie / cookie_domain" değerini kaldırın ve "web / cookie / cookie_httponly" değerini "0" olarak ayarlayın. "Var / cache" içindeki dosyaları kaldırarak önbelleği temizleyin.


4

Siteyi https'ye geçirdikten sonra da aynı sorunu yaşadım. Core_config_data içindeki web / cookie / cookie_domain'i kontrol ettiğimde NULL idi.

mysql> select * from core_config_data where path like 'web/cookie%';
+-----------+---------+----------+--------------------------+-------+
| config_id | scope   | scope_id | path                     | value |
+-----------+---------+----------+--------------------------+-------+
|        19 | default |        0 | web/cookie/cookie_domain | NULL  |
+-----------+---------+----------+--------------------------+-------+
1 row in set (0.00 sec)

Sonra benim fqdn için ayarlayın:

mysql> update core_config_data set value = 'mysites.fqdn.com' where path = 'web/cookie/cookie_domain' ;

Bundan sonra web sitesini yeniden başlattım ve iyi çalıştı:

systemctl restart apache2

3

PHP sürümünü PHP7 olarak ayarlamayı unuttuğum için ERR_TOO_MANY_REDIRECTS hatasını aldım.


2

Bu hata localhost, özellikle Chrome'da ana bilgisayar adınız olarak kullanıldığından kaynaklanır . Kendi alan adınızı kullanmanızı öneririz. Ayrıntılar için Alan'ın bloguna göz atın

Magento değil, web tarayıcıları, localhost gibi 2 noktadan daha az bir alan adı ile kullanıldığında farklı davranıyor.


OP, "localhost" kullanarak kurduğu yeri nereden söyledi?
MrUpsidown

2

Magento'yu localhost yerine yerel IP'nizle yeniden kurmayı deneyebilirsiniz .

Bu olacak http://127.0.0.1/foldername. Bu şekilde yükledikten sonra, herhangi bir tarayıcıdan erişebilirsiniz.

Veritabanındaki değeri, değerin şöyle görüneceği core_config_data dizininde de değiştirebilirsiniz :

http://localhost/foldername/

bunun yerine

http://127.0.0.1/foldername/

Her iki yönden, klasöradı Magento bulunduğu nerede dizinidir.


2

Ayrıca - sadece deneyimlediğimi eklemek için, apache'den sunuyorsanız ancak ssl'yi (ve muhtemelen vernik önbelleğini) sonlandırmak için nginx kullanıyorsanız, apache'nizin

 SetEnvIf X-Forwarded-Proto "https" HTTPS=on

aksi takdirde nginx redirect çılgınlığı ile dolaşır



0

Base-url'de umlaut kullanmayın:

www.yourhost/österreich

Adını değiştirmek zorunda kaldım


0

Benim durumumda, tablodaki web/cookie/cookie_domainyol için değeri NULL olarak ayarladım .core_config_data

Bunu Magerun'u kullanarak yapabilirsiniz , şöyle:

magerun config:set web/cookie/cookie_domain NULL

0

Benim durumumda localhost yerine IP kullanıyordum ama hala çözemedim. Yönetici URL anahtarı değiştirildi. İşe yaradı.

Tabii ki yukarıdaki cevapların tümü, geliştirme sırasında bunlarla karşılaştığımız ve uyguladığımız için de geçerlidir.

Chrome buna çok neden oluyor. Firefox bunu ele almakta biraz daha iyidir.


0

AWS'de Magento 2 kullanıyorum ve Ryan Wilson'ın önerisini izleyerek Magento'nun yüklü olduğu htdocs klasörüne gidip aşağıdaki komutu kullanarak sorun düzeltildi

sudo php bin/magento config:set web/unsecure/base_url http://www.yoursite.com/
sudo php bin/magento config:set web/secure/base_url https://www.yoursite.com/
php bin/magento cache:clean

0

magento 2.2 sürümünde core_config_data'da web / cookie / cookie_domain yolunu bile bulamadım. benim durumumda sorun memcached hizmet ile oldu. Ben matoto belgelerine göre php.ini içinde session.save_handler = memcached kurdum ve bu yönetici doğru açılmasını durdurdu, bu arada ön ok. İşleyicileri tekrar session.save_handler = olarak değiştirdikten sonra dosyaların tümü çalıştı


0

Ben de aynı sorunu yaşadım.

SELECT * FROM core_config_data where path like 'web/secure/use_in_adminhtml'

değerli NULL ile 1 olarak değiştirilir


0

Siteyi bir alt etki alanından diğerine taşıdıktan ve gerekli base_urls değerini değiştirdikten sonra var / cache / * ve var / sessions / * 'i manuel olarak sil.



0

Benim durumumda, Windows önleyicileri düzgün bir şekilde üretmedi. Kodu Windows işletim sistemimde derledim ve kodu docker konteynerine kopyaladım. Sorunun bir yol sorunu olduğunu düşünüyorum. Buraya bakın

Benim Magento Sürümüm 2.3.3


0

Bu benim için çalıştı!

php bin/magento config:set web/unsecure/base_url http://example.local/ 
php bin/magento config:set web/secure/base_url https://example.local/ 
php bin/magento config:set web/secure/use_in_adminhtml 1

-1

Lütfen nginx / apache'nizde yapılandırılmış SSL bağlantısı olup olmadığını kontrol edin. Yönetici erişimi için SSL bağlantısını işaretledikten ve yapılandırılmış SSL'niz olmadığında, standart http: // bağlantısına yönlendirir ve sonra https: // öğesine geri döner. Bu yüzden bir döngü var.

Nginx'te böyle bir şey olmalı:

server {
    listen 80;
    listen 443 ssl;
    server_name test.com;
    set $MAGE_ROOT /storage/test.com;
...

OP nginx'ten nerede bahsetti? Bu yapılandırmayı nerede değiştirdiniz ve neden? Bu ne işe yarıyor?
MrUpsidown

-1

Bu .htaccess düzeltmesini kullanmayı deneyin

############################################
SetEnvIf HTTPS On HTTPS=on
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.