2015-08-08 15 views
11

Ho un problema su un sito Magento su cui sto lavorando con un reindirizzamento 302. Qualcosa nel sito/tema sta causando un reindirizzamento 302 sul link site.com/blog per andare alla home page se ho disabilitato il modulo blog predefinito del tema. Sto cercando di ottenere quell'URL da usare come homepage di una installazione di WordPress ma questo modulo nativo l'ha dirottato e non riesco a trovare dove sta accadendo.In che modo viene eseguito il 302 Redirect?

Se il modulo è acceso, funziona correttamente e utilizza il collegamento, ma quando viene spento, reindirizza. Immagino che questo sia nativo del modulo ma per qualche ragione non riesco a cambiare quel comportamento e disabilitarlo completamente (idealmente sarebbe bello se avessi un errore 404 quando il modulo del blog era spento perché almeno lo so che l'URL è disponibile per me da usare).

Con il modulo spento, ho visitato la pagina su Chrome e ho ascoltato la scheda Rete di Strumenti per sviluppatori. Viene visualizzato un reindirizzamento 302.

HTTP/1.1 302 Moved Temporarily 
Date: Sat, 08 Aug 2015 00:01:45 GMT 
Server: Apache 
Expires: Thu, 19 Nov 1981 08:52:00 GMT 
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0 
Pragma: no-cache 
X-Frame-Options: SAMEORIGIN 
Set-Cookie: frontend=80cfd66318165451fa4aa2915d139404; expires=Sat, 08-Aug-2015 02:01:45 GMT; path=/; domain=www.example.com; httponly 
Location: http://www.example.com/ 
Keep-Alive: timeout=5, max=100 
Connection: Keep-Alive 
Transfer-Encoding: chunked 
Content-Type: text/html; charset=UTF-8 

GET /blog HTTP/1.1 
Host: www.example.com 
Connection: keep-alive 
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 
Upgrade-Insecure-Requests: 1 
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.125 Safari/537.36 
Accept-Encoding: gzip, deflate, sdch 
Accept-Language: en-US,en;q=0.8 
Cookie: _gaost=.rk=; _gaos=.gaos_r=(direct).mc=(no)|(no)|(no).gaos_k=.pc=2; __ar_v4=M5J3LQW4MFADRNVY2ORZM7%3A20150610%3A4%7CN3LC2IOELZFOVNMCXKXXWV%3A20150610%3A4%7C5DCLBJIK7FDQFMXMCEDBUU%3A20150610%3A4; frontend=80cfd66318165451fa4aa2915d139404; __utma=176154288.93372352.1432329461.1435683793.1435792914.29; __utmz=176154288.1432329461.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); __atuvc=3%7C26%2C3%7C27%2C17%7C28; adminhtml=d90076dbca44dcccdd004d86240b9683; adminhtml=d90076dbca44dcccdd004d86240b9683; frontend=80cfd66318165451fa4aa2915d139404 

so che codici 302 possono essere causati da file .htaccess così ho SSHed al server e utilizzato find per individuare tutti i file .htaccess sul server (e ho trovato 17), ma nessuno di loro aveva alcun codice di reindirizzamento che influenzerebbe quella pagina

C'è un modo per rilevare dove/perché/come sta avvenendo il reindirizzamento 302? Non c'è documentazione su questo problema per questo modulo/plugin, ho cercato ovunque e ho persino contattato lo sviluppatore ma non ho avuto risposta.

Grazie per il vostro aiuto.

+1

302 redirect non solo accadere a causa di .htaccess, la ricerca di 'header (" Location:. 'Dichiarazioni Eseguire un grep per vedere se è possibile trovare il malfattore – Rimble

+1

Dopo aver fatto quello che ha detto @ Tom Kriek, a filo. la cache prima di riprovare. –

+0

@TomKriek, ottimo pensiero su questo.Ho eseguito un grep e non ho trovato nessuna chiamata di intestazione correlata al blog. Ci sono altre istanze di reindirizzamenti 302 che non sto prendendo in considerazione? – MillerMedia

risposta

7

Ho trovato il problema.

Ciò ha a che fare con il "routing" in Magento. C'è una funzione chiamata addRoute e ho fatto un grep sul server cercando 'addRoute' e ho trovato un sacco di file in cui stava succedendo.

Sono stato in grado di individuare la cartella in cui l'intero modulo blog stava facendo il reindirizzare e ha dovuto solo passare attraverso la logica del modulo e disabilitare alcune delle funzioni nella sua classe.

3

Magento è una grande piattaforma con un enorme numero di opzioni e funzionalità, ma 302 reindirizzamenti è qualcosa che si svolge su quasi tutti i siti di eCommerce/blog.

C'è un sacco di problemi su 302 redirection in Magento.

A volte è possibile impostare manualmente redirect 301 in System > Configuration > General > Web > Url Options ma mantiene mostrando 302, a volte si ottiene avvisi di un numero enorme di pagine come example.com/blog/post/1234 con 302 reindirizzamento, ecc

Magento imposta automaticamente 302 redirect per gli URL come:

  • Confronta
  • Aggiungi alla mia lista
  • moneta interruttore
  • S posizione strega
  • ...

(Fonte: https://www.mavenecommerce.com/blog/302-redirects-in-magento/)

Quindi cercate di andare a System > Configuration > General > Web > Url Options cambiare (se possibile) direttamente dalla possibilità di Magento. Probabilmente è possibile cambiarlo direttamente da lì.

+0

Esiste un'opzione per eseguire un reindirizzamento 302 quando "www" non è davanti all'URL nel browser ma questo non risolve il problema che sto cercando esattamente. ... – MillerMedia