Domanda

Abbiamo recentemente aggiornato un sito da CE 1.5.0.1 a CE 1.7.0.2 , e ora tutte le pagine dei prodotti solo volontà di un pagina 404 . Questo vale per i collegamenti diretti, con la product-url.html dopo il dominio, e anche pieni collegamenti canonici. Si applica anche quando cerchiamo di accedere al prodotto utilizzando l'URL completo /catalog/product/view/id/1000.

Non c'è, e immagino la sua legati, un problema con l'indicizzazione sul sito. Ci sono 72K prodotti in modo indicizzazione è lento al meglio, ma ho ancora stato in grado di raggiungere tutti gli indici per completare senza errori, e attualmente il catalogo dell'indice URL riscrive è bloccato sul trattamento.

Abbiamo provato troncare la tabella core_url_rewrites, e, ovviamente, reindexing tutto. Abbiamo creato anche i prodotti di prova pianura semplici, che, inoltre, non funzionano.

file .htaccess corrisponde, sito a lavorare dal vivo, c'è qualcos'altro che ci può aver perso?


Ora ho scoperto che l'oggetto prodotto è ancora disponibile per me sulla pagina 404 - strano eh? Posso accedere a tutti i dati di prodotto utilizzando Mage::registry('current_product');, questo mi ha portato a guardare il controller di vista del prodotto, e ho scoperto che commentando Mage::dispatchEvent('catalog_controller_product_view', array('product' => $product)); ha mostrato la pagina del prodotto.

Quindi posso solo pensare che qualcosa è agganciato su questo evento e causando la pagina di morire - ovviamente lasciando questa linea commentata non è una soluzione come la sua causa altri problemi con il prodotto, ma ci dovrebbe puntare nella giusta direzione ?

Tutte le idee sarebbe molto apprezzato, non ci sono moduli personalizzati che ascoltano per questo evento.


Grazie.

È stato utile?

Soluzione

Ho avuto un problema che ha risposto bene a commentare la linea si suggeriscono anche:.

Mage::dispatchEvent('catalog_controller_product_view', array('product' => $product));

quindi questo mi ha fatto pensare a cercare qualsiasi cosa utilizzando tale evento, così ho fatto un grep su app / codice per catalog_controller_product_view

i miei risultati:

non, molto, considerando il primo è proprio questo che ha la linea abbiamo commentato. poi vedo qualcosa nei rapporti, e che pareggia la mia memoria ... Non pensavo che fosse necessario, ma avevo svuotato il Report_ * tavoli durante un'unione di database, questo deve essere stato esso,

così dopo il ripristino quei tavoli da un backup sua lavorare di nuovo anche con la riga non commentata ...!

Altri suggerimenti

Sembra che il report_event_types tabella è vuota. Se sì, eseguire la seguente query e funzionerà.

    CREATE TABLE IF NOT EXISTS `report_event_types` (
  `event_type_id` smallint(5) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Event Type Id',
  `event_name` varchar(64) NOT NULL COMMENT 'Event Name',
  `customer_login` smallint(5) unsigned NOT NULL DEFAULT '0' COMMENT 'Customer Login',
  PRIMARY KEY (`event_type_id`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COMMENT='Reports Event Type Table' AUTO_INCREMENT=7 ;



INSERT INTO `report_event_types` (`event_type_id`, `event_name`, `customer_login`) VALUES
(1, 'catalog_product_view', 0),
(2, 'sendfriend_product', 0),
(3, 'catalog_product_compare_add_product', 0),
(4, 'checkout_cart_add_product', 0),
(5, 'wishlist_add_product', 0),
(6, 'wishlist_share', 0);

Grazie !!! Ho avuto lo stesso problema dopo un crash reindex! Tutte le pagine dei prodotti restituiti pagina di errore 404 !!

Così ho aperto Mage_Reports_Model_Event_Observer e aggiunto un

return true;

Nel begening di questo metodo osservatore:

public function catalogProductView(Varien_Event_Observer $observer)

E ha funzionato !!

Mi hai salvato la giornata / vita !!

Per un uso più meglio, Recarsi nel menu Sistema> configuration-> Rapporti-> generale e modificare l'impostazione per l'abilitazione report. Passa a No e il problema sarà risolto.

Ho lo stesso problema, ma ora è risolto. Spero che la mia esperienza può aiutare gli altri che hanno lo stesso problema.

Dopo aver troncato alcune tabelle di registro nel database di ieri, tutte le pagine di dettaglio del prodotto erano vuote, non tutti gli errori, le altre pagine funziona bene. il mio simplehelix ospitare disabile Compilation, pagine caricate ma tutte le pagine prodotto restituito alla pagina 404. simplehelix non era affatto disponibile, dopo 2 ore mi hanno chiesto di pagare 25USD per ripristinare il mio sito. oggi ho cercato in Google e controllato il exception.log e ho trovato l'errore, tavolo report_event non esiste , così ho copiato questo tabella al database, tutto funziona bene ora. Ho anche notato che il database privious aveva tavolo report_event_types, ma dopo che ho importato tavolo report_event, questa tabella è scomparso, non so perché.

Ho anche affrontare lo stesso errore 404 non trovato . Ho controllato il exception.log ed ho trovato l'errore:

main.CRITICAL: un'eccezione 'Magento \ Framework \ Exception \ LocalizedException' con il messaggio 'Oggetto DOMDocument dovrebbe essere creato.' nel C: \ xampp \ htdocs \ camptest \ vendor \ Magento \ Framework \ Vista \ elemento \ UIComponent \ Config \ DomMerger.php: 408

Un mio modulo personalizzato è stato override catalog_product, in modo che include catalog_product_price.xml nella directory layout. ma non c'era alcun blocco e altre cose che dipendono da me dichiarato in file xml. Così ho creato ogni blocco, contenuti statici chiaro, aggiornare il programma di installazione, cancellare la cache e iniziare a lavorare.

Questo errore è stato anche registrato nel file di system.log anche con più chiarezza di errore.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a magento.stackexchange
scroll top