Pagina 2 di 3 primaprima 1 2 3 ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 25

Hybrid View

  1. #1
    Sono bloccato non so come proseguire... anche le vecchie esercitazioni non funzionano più... devo trovare un sistema per non spostare il localhost del framework in public modificando il minor numero di file dello skeleton di Zend altrimenti non posso usare questo strumento sui normali hosting...

    Se non risolvo questo problema posso evitare di leggere i capitoli successivi. Spostare il localhost in public significa anche tante altre rogne in futuro per eventuali integrazioni con altri miei lavoretti... devo evitare assolutamente!

    Più pratica in futuro...

  2. #2
    Utente di HTML.it L'avatar di Enoa
    Registrato dal
    Jul 2005
    Messaggi
    573
    Se l'errore 404 è quello che hai postato, il rewrite non sta funzionando ( oppure hai modificato e tradotto il file di view error/404.phtml ? )
    Se non imposti /public come root del tuo virtualhost, devi spostare htaccess e index.php nella tua docroot e modificare il path di include a "init_autoloader.php" di conseguenza.

    È un pelino difficile seguirti , parli di moduli copiati dal libro, da esempi online e poi c'è lo skeleton, ma cosa intendi? questo http://framework.zend.com/manual/cur...plication.html ?
    Il file init_autoloader.php lo hai modificato?

    Ci sono varie release di zf2, e non tutte le novità sono retro-compatibili (codice deprecato o rimosso), se il libro e gli esempi non sono aggiornati alla versione che stai usando, i problemi non potranno che aumentare. Non è meglio seguire la guida ufficiale?

    L'errore 404 non c'entra niente con la "comunicazione" con i moduli, gli errori sarebbero diversi.

  3. #3
    Rispondo in ordine:

    1.Non ho modificato il file seguente in alcun modo:
    C:\xampp\htdocs\ZF2\module\Application\view\error\ 404.phtml

    2.Ho spostato qui il file index e l’htacces:
    C:\xampp\htdocs\
    Ma non capisco come devo correggerlo:
    Codice PHP:
    <?php
    /**
     * This makes our life easier when dealing with paths. Everything is relative
     * to the application root now.
     */
    chdir(dirname(__DIR__));

    // Decline static file requests back to the PHP built-in webserver
    if (php_sapi_name() === 'cli-server' && is_file(__DIR__ parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH))) {
        return 
    false;
    }

    // Setup autoloading
    require 'init_autoloader.php';

    // Run the application!
    Zend\Mvc\Application::init(require 'config/application.config.php')->run();
    Il file si trova qui:
    C:\xampp\htdocs\ZF2\init_autoloader.php
    A mio avviso c’è anche ‘config/application.config.php’ da editare che si trova qui:
    C:\xampp\htdocs\ZF2\config\application.config.php

    3.Si con Skeleton intendo quello ma me lo procuro in questo modo:
    git clone git://github.com/zendframework/ZendSkeletonApplication.git
    e non copiandolo dal libro o da internet.
    Dal testo copio solo la cartella seguente:
    C:\xampp\htdocs\ZF2\module\Users
    che il manual spiega anche come creare passo a passo.

    4.Il file init_autoloader.php non l’ho modificato, ho lasciato quello che mi ha messo Git.

    5.Il libro è questo:
    http://shop.oreilly.com/product/9781782161929.do
    e dovrebbe essere aggiornato. Non leggo la guida ufficiale perché preferisco qualcosa di più organico che mi fa capire come funziona il framework poi eventualmente passo a quelle per qualcosa di più specifico.
    Comunque i codici del libro funzionano, semplicemente non riesco a farli girare se non modifico anche la root del virtualhost, cosa che non voglio fare per i motivi che ho già detto.

    La priorità è spostare la root in htdocs di XAMPP, il resto viene in secondo luogo.
    Più pratica in futuro...

  4. #4
    Vi ho mandato in tilt?
    Più pratica in futuro...

  5. #5
    Se scrivo:

    http://localhost/ZF2/public/users/index/login

    accedo alla view senza problemi mentre se clicco su Login in questa pagina:

    http://localhost/ZF2/public/users/

    finisco qui:

    http://localhost/users/index/login

    e leggo giustamente sul browser "Oggetto non trovato!".

    Fatevi vivi, vi prego!

    Se seguo la procedura di spostamento della cartella root di XAMPP (da /htdocs a /htdocs/ZF2/public) risolvo ma solo in locale perché quando sposto tutto sull'hosting il mio sito smette di funzionare. Su Altervista.org e compagnia bella non ho possibilità di seguire la procedura di spostamento di cui parlo sopra.
    Non sapere rispondere oppure non capite ciò che ho scritto? Mai nessuno di voi si è scontrato con questo problema?
    Posso/devo passarvi i moduli del libro?

    Ultima modifica di giannino1995; 17-01-2015 a 16:50
    Più pratica in futuro...

  6. #6
    Utente di HTML.it L'avatar di Enoa
    Registrato dal
    Jul 2005
    Messaggi
    573
    Premetto che non ho mai usato Zf2 su hosting condiviso, 2 chiarimenti:
    - La modifica che ti fanno fare di C:\Windows\System32\drivers\etc\hosts non c'entra niente con ZF2, serve solo a istruire il tuo computer e browser a saltare il DNS e risolvere l'host con l'ip che gli fornisci (127.0.0.1 == locale), riguarda il client e non la configurazione del webserver
    - questo url funziona http://localhost/ZF2/public/users/index/login perchè l'htaccess è in /htdocs/ZF2/public e non in /htdocs/ , questo url http://localhost/users/index/login non funziona di conseguenza e la pagina di errore è quella di default del webserver, perchè "zf2 non è stato eseguito"

    La prima cosa che devi fare è spostare (spostare e non soltanto copiare) l'.htaccess da /htdocs/ZF2/public a /htdocs, poi possiamo tentare 2 strade:
    1)
    modifichi l'htaccess così:
    codice:
    RewriteEngine On
    RewriteRule ^$ /ZF2/public/ [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_URI} !^/ZF2/public/
    RewriteRule ^(.*)$ /ZF2/public/$1 [QSA,L]
    OPPURE (htaccess invariato, ma solo spostato)
    2) crei un file index.php da mettere nella document root con questo contenuto:
    Codice PHP:
    <?php
    error_reporting
    (E_ALL);
    ini_set('display_errors'1);
    require 
    'ZF2/public/index.php';
    Ho testato entrambe le soluzioni partendo da un'installazione pulita usando composer, e la skeleton app funziona

    p.s. se usi la 2, anche tutte le risorse esterne (css, immagini,js) devono stare nella root

  7. #7
    Giannino, non è che ci hai mandato in tilt, ma chiedi una cosa un pò tanto specifica a TUTTO il progetto che stai seguendo. Di questo progetto non conosciamo il libro, non conosciamo il codice, probabilmente molti di noi non conoscono ZF2 talmente bene da dirti "guarda qui qui qui"... Insomma, stiamo sul "boh" spinto visto che te non sai da che parte iniziare ad investigare il problema. Fossi in te, invece di fare copia e incolla del codice del libro nel tuo sito, riscriverei a mano tutto (e per tutto intendo TUTTO) usando come fonti:

    -- premessa -- ) LEGGERE INTERAMENTE IL MANUALE UFFICIALE o alemno guardare se hanno qualche tutorial o spiegazione fornita da loro sui macrocomponenti (ad esempio, se non provi a manina a creare un modulo tuo da zero, che magari stampi la classica frase "hello world" data una particolare url, come fai a capire del perchè non te ne funziona uno già pronto e complesso?)
    1) IL MANUALE UFFICIALE DI ZF, che per quanto schifoso è sempre il manuale ufficiale
    2) il libro
    3) il codice del libro

    Procedendo a step per giungere alla funzionalità completa, in maniera che in primis tu possa capire dove sia il problema. Per intenderci, quel modulo di upload sarà un esempio di uno dei mille modi in cui si possa scrivere la funzionalità richiesta, procedi per step cercando di identificare le parti chiavi della procedura.

    Altrimenti posso pure dirti di postare uno zip col modulo intero che vuoi installare, ma insomma non è detto che la gente abbia tempo (non ti nascondo che sarei curioso di provare, ma fino a mercoledì non ho tempo )

    Buono studio
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  8. #8
    Apro httpd-vhosts.conf in C:\xampp\apache\conf\extra ed aggiungo questo codice:
    codice:
    <VirtualHost *:80>
          DocumentRoot "/xampp/htdocs/ZF2/public"
          ServerName ZF2
          ServerAlias www.ZF2
          SetEnv APPLICATION_ENV "development"
          <Directory "/xampp/htdocs/ZF2/public">
            DirectoryIndex index.php
            AllowOverride All
            Order allow,deny
            Allow from all
          </Directory>
      </VirtualHost>
    poi apro C:\Windows\System32\drivers\etc ed aggiungo questo altro codice:
    codice:
    127.0.0.1 ZF2
    E' questo che voglio evitare di fare.
    Più pratica in futuro...

  9. #9
    Grazie Santino, purtoppo ZF2 non può essere affrontato come dici tu partendo dalla frase "hello world" e poi ho anche provato a scrivere i moduli di mano mia e funzionano correttamente, la domanda che sto ponendo è un altra e riguarda la cartella public.

    In pratica quando installi Zend in locale devi seguire questa procedura:
    https://www.youtube.com/watch?v=YbBt4W65SRk
    che prevede la sostituzione della root del server con la root di Zend (public). Guarda almeno il video!
    Fin che usi tutto in locale fila tutto liscio poi quando sposti tutto sull'hosting nascono i problemi quindi devo cercare di far funzionare Zend in locale senza spostare la root del server ma usando un redirect file.

    Se non sapere come fare non insisto però sono stranito dato che più di una volta, non ricordo chi, ma uno di voi sicuramente mi ha scritto:
    "Al giorno d'oggi non basta conoscere php ma bisogna conoscere anche un framework di sviluppo altrimenti sei tagliato fuori dal mercato".
    Io pensavo che tutti voi usavaste Zend regolarmente! Credevo che Zend fosse come la panna per il pasticcere professionista!

    Più pratica in futuro...

  10. #10
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    il fatto che modifichi la "root" del server mi fa pensare che stai agendo su un virtualhost di apache o modificando direttamente la configurazione (o via file .conf del server o via htaccess)
    se il tuo hosting non ti fa fare la stessa cosa, non riuscirai mai a far funzionare il tutto

    PS: non conosco per nulla Zend

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.