We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 37123
    • 186 Posts
    Ciao, ho urgentemente bisogno di una mano per questo problema: dopo aver sviluppato il sito online (uso xampp su mac) l'ho copiato sul server sul quale dovrebbe risiedere tramite ftp e ci ho importato il DB con phpmysql, tutto normale, senza particolari problemi.

    Pensavo di vedere il mio sito finalmente online e invece ho diversi problemi. L'ultimo della serie, penso sia quello definitivo, questo è il log

    AH01215: PHP Fatal error: Call to a member function get() on a non-object in /web/htdocs/www.prolocopagnacco.it/home/core/model/modx/modmanagerresponse.class.php on line 41

    chiaramente non ho modificato nulla, in locale funziona correttamente. Le righe di codice incriminate sono queste

    $theme = $this->modx->getOption('manager_theme',null,'default');
            $this->modx->lexicon->load('dashboard','topmenu','file','action');
            if ($action == 0 || !isset($this->modx->actionMap[$action])) {
                /** @var modAction $action */
                $action = $this->modx->getObject('modAction',array(
                    'namespace' => 'core',
                    'controller' => 'welcome',
                ));
                $action = $action->get('id');
            }

    nello specifico la 41 è $action = $action->get('id');

    Aiutatemi! Grazie

    Cancellando il contenuto della cartella cache mi dice che il sito è momentaneamente offline.

    Ah si, anche cercando di accedere al manager mi viene restituito un errore 503 page not found (ma il 503 non significa problemi di permessi?)

    Provando e riprovando;
    Fatal error: Call to a member function getSource() on a non-object in /web/htdocs/www.prolocopagnacco.it/home/core/cache/includes/elements/modsnippet/37.include.cache.php on line 122

    Cambiando i permessi alla cartella core a 777 (per fare un test) ricevo anche quest'altro errore...
    End of script output before headers: index.p

    Sono perso e ho una fretta cane, sono nel panico insomma [ed. note: zukimania last edited this post 11 years, 1 month ago.]
      • 36888
      • 230 Posts
      Lo snippet 37 quale sarebbe? Gallery?

      Comunque ho provato ad aprilo e per un attimo , ora, ha funzionato poi sono tornato nella home e ha smesso di funzionare.

      EDIT: Non funzionava perchè il link alla home è sbagliato laugh
        • 37123
        • 186 Posts
        Ah il 37 è l'id di uno snippet? Smanettando un po ieri notte sono arrivato alla soluzione attuale però come vedi non va come dovrebbe, nella homepage non si vede lo slideshow, non funzionano alcune cose come getResources e migix. In piu non va il manager.

        Stasera dopo lavoro provo di nuovo a lanciare il setup e vediamo cosa cambia.
        Ho trovato una guida in italiano che spiegava (a grandi linee) come fare il porting di un sito su un altro server e specificava che andava lanciato nuovamente il setup in modalità aggiornamento e sostituire all'interno del file config_core.php i percorsi delle cartelle.

        Riguardo il link alla home mi sono accorto e ho provveduto ma comunque niente, sono in alto mare.

        Grazie intanto!
          • 37123
          • 186 Posts
          Ho controllato l'id dello snippet è relativo a getImageList
          Oggi la rete non mi assiste e sto cercando di ricopiare nuovamente TUTTO il sito sul server di produzione e a rilanciare il setup.
          Mi conviene partire con un installazione pulita, e importare poi il database?

          Grazie
            • 36888
            • 230 Posts
            getImageList anche a me ha fatto delle pippe delle volte ma molto random.
            Ti ricopio una mia "interpretazione" della migrazione fatta con le esperienze avute e usando come base quella ufficiale.
            Seguendo questa normalmente alla fine mi funziona tutto.
            Ho inserito cose "personali" che mi son capitate per gallery ti consiglio di leggere il punto 8.
            Non fare caso ad errori di battitura, castronerie, numeri et altro me li appunto man mano e non ricontrollo e fanno parte di una mia guida che utilizzo:D
            4 - MIGRAZIONE DEL SITO IN ALTRA LOCAZIONE
            (Moving site to a new server)


            Quanto qui di seguito esposto passo per passo è VALIDO per qualsiasi spostamento che si vuole fare di un sito, sia esso da locale a remoto che fra diversi server o addirittura sullo stesso server ma in diversa posizione/cartella.
            Seguire quanto segue punto per punto per evitare problemi

            1- FURL’s e file htaccess
            Prima di procedere alla migrazione, supponendo di aver impostato i FURLS (Friendly URLs), rinominare i file .htaccess in ht.access, sia quello nella root principale che quello dentro la cartella manager.
            Dalla configurazione di sistema DISATTIVARE i FURLS

            2-Svuotare cache e ripulire sessioni
            Loggarsi nel manager del sito da spostare e procedere con i seguenti passi (diminuisce anche la dimensione del file)
            • Loggarsi nel manager, poi: Sito -->Svuota Cache
            • Ripulire Sessioni: Sicurezza --> Ripulire tutte le sessioni
            • Vuotare tutta la cartella cache manualmente tramite ftp
            fatto ciò siamo sbattuti fuori dal manager e non ci dobbiamo rientrare procedendo coi passi seguenti.

            3- Zippare TUTTI i file da FTP o analogo
            Per evitare errori, guadagnare tempo conviene impacchettare tutti i file in un archivio .zip o .rar
            Caricare tutti i file nella root della nuova posizione ed estrarli.
            Se estratti nella sub directory con il nome dello archivio vanno poi rispostati , quelli dentro la sub directory, nella posizione corretta, la root principale.
            Volendo si può spostare tutto tramite ftp senza zippare ma non conviene.

            4-Permessi scrittura 777 o 755
            facendo archivio dovrebbero essere mantenute le proprietà di scrittura di tutti i file e di tutte le cartelle, se ci sono problemi ricontrollare sulla nuova posizione se sono mantenute le proprietà della vecchia locazione


            5-DATABASE DB
            Esportare il vecchio Database e importarlo nella nuova posizione.
            Ricordarsi di mantenere i nomi (DB,PW ecc ecc) scritti nel file core/config/config.inc.php cioè ricreare il DB con gli stessi nomi


            6-Aggiornare file configurazione
            Nella nuova posizione tramite ftp aprire e modificare il file core/config/config.inc.php. come segue:
            Ci sono SEI modifiche da fare che riguardano i PATH e lo HOST.
            TROVA e SOSTITUISCI quanto segue con i percorsi giusti:
            /* PATHS sparsi per tutto il file*/
            $modx_core_path= '/fullpath/to/modx_doc_root/core/';
            $modx_processors_path= '/fullpath/to/modx_doc_root/core/model/modx/processors/';
            $modx_connectors_path= '/fullpath/to/modx_doc_root/connectors/';
            $modx_manager_path= '/fullpath/to/modx_doc_root/manager/';
            $modx_base_path= '/fullpath/to/modx_doc_root/';
            $modx_assets_path= '/fullpath/to/modx_doc_root/assets/';

            /* HOST (used for command-line PHP stuff) circa nella riga 61 del file */
            $http_host='yoursite.com'


            Controllare TUTTE LE RIGHE sotto i path che contengono gli Url, devono contenere solo ULTIMA parola del path SOPRASTANTEsotto

            Per i path basta trovare la parte in barrata e sostituirla con il nuovo percorso completo, FARE ATTENZIONE.
            Per HOST si deve aggiungere il dominio SENZA www.

            Aggiornati le righe sopra rendere NON SCRIBILE il file e procedere con le ultime 3 modifiche.

            Vanno modificati altri 3 file sempre con i percorsi giusti, i file sono:
            • /config.core.php
            • /connectors/config.core.php
            • /manager/config.core.php
            contengono solo due righe:
            define('MODX_CORE_PATH', '/fullpath/to/modx_doc_root/core/');
            define('MODX_CONFIG_KEY', 'config');

            va modificato il percorso barrato come sopra.

            7- Aggiornare DB
            MODx memorizza alcuni dati percorso nel suo database, si leggono nel file config.inc.php! Quando si sposta server, potrebbe essere necessario aggiornare la tabella aree di lavoro, altrimenti la pagina manager può mostrare una pagina bianca.

            Andare tramite myphpadmin nel database trasposto
            -andare sul tab SQL ed eseguire la seguente query che trova tutte le linee coi path
            SELECT `path` FROM `your_revo_db`.`workspaces`;
            dove your_revo_db va sostituito con il nome del Db, che si legge sopra
            e prima di workspaces mettere il nome della tabella e.g. revo_
            Quanto sopra serve a trovare tutti i path inseriti nel DB, una volta trovati vanno modificati inserendo quanto segue con le stesse accortezze per i nomi your_revo_db , revo_ e i path giusti
            UPDATE `your_revo_db`.`workspaces` SET path='/fullpath/to/modx_doc_root/core/' WHERE id='1';

            8- Problema component
            A volte nel trasporto non viene settato bene il percorso per alcuni componenti soprattutto gallery che viene lasciato come quello vecchio.
            Per sostituirlo si va nella configurazione di sistema , area Sistema e server e si cambia la riga :
            pacchetti sistema (extensions_packages) col path giusto del componente errato:
            e.g. con artiche e Gallery con evidenziato percorso di gallery
            [{"articles":{"path":"[[++core_path]]components/articles/model/"}},{"gallery":{"path":"[[++core_path]]components/gallery/model/"}}]
            N.B. Qualora il manager dia problemi procedere al cambiamento sopra elencato dalla tabella del DataBase:
            Andare nelle tabella system_setting e modificare la riga extensions_packages (si trova intorno alla pagina cool come sopra riportato.

            9- Namespace
            Controllare ed eventualmente modificare, sempre da tabella namespaces DB oppure dal manger, i percorsi dei Blocchi (namespaces) soprattutto se se ne è creati di personali che non vengono modificati in automatico.

            10-.htaccess – cache - log manager - FURLS- "NUOVO SITO"
            Il più è già stato fatto ma ci sono alcuni ulteriori piccole accortezze da eseguire nella "nuova" installazione
            • Ricordarsi di rinominare i file ht.access in .htaccess sia in root che dentro il manager
            • Svuotare la cache del broswers non dal manager per evitare che siano state memorizzate info errate
            • loggarsi nel manager, dovrebbe essere tutto a posto e aprirsi, altrimenti rivuotare cache e refresh
            • riattivare i FURLS

            11 – Rifare setup (aggiornamento)
            a questo punto, anche se non è obbligatorio, conviene rilanciare il setup per “solidificare” il trasferimento:
            • caricare nella nuova posizione il file setup della STESSA IDENTICA VERSIONE di MODx
            • rilanciarlo dalla barra degli indirizzi .miosito.it/setup
            • seguire le istruzioni a monitor scegliendo AGGIORNAMENTO

            N.B. Alcune volte il setup non mi ha funzionato ma il sito funzionava bene quindi non mi sono informato maggiormente


            12- Aggiornate addon ed extra
            Non necessariamente serve un aggiornamento degli addon e degli extra inseriti ma per sicurezza conviene andare nella configurazione di sistema e controllare se gli extra hanno i nuovi percorsi aggiornati.


            FINITO!!!!!!
            Il sito dovrebbe essere attivo e funzionante in ogni sua parte nella nuova posizione.

            Sembra una procedura complessa ma in realtà non lo è. Tenere comunque i file di bachup della vecchia posizione fino a quando non se ne è fatti almeno altri due o 3 in quella nuova a seguito di funzionamenti esatti.
            • ottima guida di Mabol, fai attenzione ai vari files config...spesso è un problema di questo tipo.

              Poi puoi procedere per steps disattivando snippet e plugin, se non entri neanche nel manager forse hai sbagliato qualcosa nei files config.

              A seconda degli hosting può servire disattivare la variabile compress_js nelle impostazioni di sistema: o lo fai prima di esportare il db o lo fai direttamente da phpmyadmin.
                TilliLab | MODX Ambassador
                website
                • 37123
                • 186 Posts
                Grazie! In serata (se avrò la connessione visto le giornate precedenti) mi metterò nuovamente al lavoro. Grazie ancora, vi faccio sapere
                  • 37123
                  • 186 Posts
                  Ci sono quasi, ora il sito funziona quasi tutto ma purtroppo non funziona il manager!
                  Questo è il logo

                  [Thu Mar 14 21:16:56 2013] [error] [client 46.254.234.244:47385] - www.prolocopagnacco.it - End of script output before headers: index.php
                  [Thu Mar 14 21:16:56 2013] [error] [client 46.254.234.244:47385] - www.prolocopagnacco.it - AH01215: suexec policy violation: see suexec log for more details

                  Ora ho paura a fare nuovamente il setup o ad eseguire altre operazioni però senza il manager non si puo stare no?


                  Ci sono ancora alcuni problemi di path evidentemente (il menu in alto funziona tutto tranne home che riporta www.prolocopagnacco.ithttp://www.prolocopagnacco.it)


                  Aggiornamento: era un problema di permessi, ora li ho impostati a 755, adesso però escono anche qui i problemi di path di cui sopra

                  Fatal error: Call to a member function getMessage() on a non-object in /web/htdocs/www.prolocopagnacco.it/home/core/model/modx/modmanagercontroller.class.php on line 557

                  Ho disattivato anche compress_js per sicurezza

                  Dai che ci sono! [ed. note: zukimania last edited this post 11 years, 1 month ago.]
                    • 37123
                    • 186 Posts
                    Dopo aver rifatto l'installazione i problemi sono aumentati, ma probabilmente sempre collegati uno all'altro

                    Fatal error: Uncaught exception 'SmartyException' with message 'Unable to load template file 'header.tpl'' in /web/htdocs/www.prolocopagnacco.it/home/core/model/smarty/sysplugins/smarty_internal_template.php:162 Stack trace: #0 /web/htdocs/www.prolocopagnacco.it/home/core/model/smarty/sysplugins/smarty_internal_template.php(537): Smarty_Internal_Template->isExisting(true) #1 /web/htdocs/www.prolocopagnacco.it/home/core/model/smarty/Smarty.class.php(335): Smarty_Internal_Template->getRenderedTemplate() #2 /web/htdocs/www.prolocopagnacco.it/home/core/model/modx/modmanagercontroller.class.php(257): Smarty->fetch('header.tpl') #3 /web/htdocs/www.prolocopagnacco.it/home/core/model/modx/modmanagercontroller.class.php(448): modManagerController->fetchTemplate('header.tpl') #4 /web/htdocs/www.prolocopagnacco.it/home/core/model/modx/modmanagercontroller.class.php(166): modManagerController->getHeader() #5 /web/htdocs/www.prolocopagnacco.it/home/core/model/modx/modmanagerresponse.class.php(121): modManagerController->render() #6 /w in /web/htdocs/www.prolocopagnacco.it/home/core/model/smarty/sysplugins/smarty_internal_template.php on line 162
                    • Mah... che versione di php utilizzi? Ormai che ci sei prova a fare un'installazione pulita e vedi se ci sono problemi...
                        TilliLab | MODX Ambassador
                        website