• User Attivo

    Allego ulteriori info:

    per farlo interpretare come php ho aggiunto al file php.conf la seguente riga:

    AddType application/x-httpd-php .html .htm

    Tolta questa tutto torna normale.


  • Moderatore

    innanzitutto trovo strano dover modificare php.conf, ad essere modificato dovrebbe essere httpd.conf, o meglio ancora quella linea andrebbe aggiunta al file .htaccess nella root del sito web

    in ogni caso non c'è nessun motivo per operare così, anzi è sempre meglio tenere separati i file HTML dai codici PHP


  • User Attivo

    @paolino said:

    in ogni caso non c'è nessun motivo per operare così, anzi è sempre meglio tenere separati i file HTML dai codici PHP

    Ho bisogno di usare gli include senza dover rinominare le vecchie pagine htm per non perdere l'indicizzazione. Esistono altre soluzioni??
    Il problema comunque è stato risolto, non so bene come, dalla società di housing. Il fatto di impostare quel paramaetro che tu chiami php.conf è stata un'idea loro. Purtroppo non sono molto esperto di queste cose, ritieni che mi converrebbe invitarli a cambiare strada? Visto che ora tutto funziona alla perfezione, che problemi potrebbero esserci a lasciare tutto così com'è?


  • Moderatore

    il problema è che tutti i file .htm e .html finiscono per essere passati all'interprete PHP il che rallenta tutto il sito....ovviamente ci sono anche problemi di potenziali vulnerabilità legate a PHP, anche se è raro che vengano sfruttate visto che è più conveniente sfruttare vulnerabilità di SSH o del webserver

    ad ogni modo non è vietato fargli interpretare i file .htm come codice PHP e visto il caso in questione forse è la migliore soluzione, l'altra sarebbe stata di fare un 301 dai file con estensione .htm agli equivalenti con estensione .php


  • User Attivo

    @paolino said:

    ad ogni modo non è vietato fargli interpretare i file .htm come codice PHP e visto il caso in questione forse è la migliore soluzione, l'altra sarebbe stata di fare un 301 dai file con estensione .htm agli equivalenti con estensione .php

    Arghhh! Sono 2000 e passa pagine!

    Grazie comunque per le preziose INFO, informerò chi di dovere, ciao!


  • User

    @mypersonaltrainer said:

    Arghhh! Sono 2000 e passa pagine!
    ...

    per questo hanno introdotto le espressioni regolari.
    Io avrei seguito questa strada.
    ciao
    sergio


  • User Attivo

    Quindi se non ho capito male (è la prima volta che sento il termine "espressioni regolari") intendevi utilizzare la funzione "trova e sostituisci"?
    Poi avrei comunque dovuto specificare l'url della nuova pagina, un lavoretto da 2 o tre giorni almeno...
    E poi cos'ha questa strada che non va, considerando che sul server, ad esclusione di quelle che dovevano essere interpretate come php, non c'è nessun'altra pagina .htm ?


  • User

    a mio avviso la soluzione più pulita è cambiare la estensione di tutti i file .html e . htm che necessitano di passare attraverso l'interprete php con estensione .php ed inserirli in una directory apposita.
    Poi fai un redirect 301 sul file .htaccess o direttamente su httpd.conf (se ne hai l'accesso) per conservare l'indicizzazione sui motori.
    Tanto per darti un esempio se hai mod_rewrite abilitato sul tuo server puoi mettere in .htaccess qualcosa del tipo

                      RewriteEngine on 
                      RewriteBase / 
                      RewriteRule (.*).htm$ /$1.php 
    

    ma hai comunque la possibilità (appunto con le espressioni regolari) di essere selettivo e fare il redirect secondo specifici criteri per filtrare solo i file che sono di tuo interesse con un unico comando.
    Per quanto riguarda a cosa sono le espressioni regolari dai una prima occhiata a wikipedia http://it.wikipedia.org/wiki/Espressione_regolare e fai una piccola ricerca su google.

    ciao
    sergio


  • Moderatore

    @mypersonaltrainer said:

    Quindi se non ho capito male (è la prima volta che sento il termine "espressioni regolari") intendevi utilizzare la funzione "trova e sostituisci"?
    Poi avrei comunque dovuto specificare l'url della nuova pagina, un lavoretto da 2 o tre giorni almeno...
    E poi cos'ha questa strada che non va, considerando che sul server, ad esclusione di quelle che dovevano essere interpretate come php, non c'è nessun'altra pagina .htm ?

    in questo caso non vale la pena cambiare le estensioni dei file.....

    il punto è che in linea teorica e volendo fare i precisi bisogna usare le estensioni adatte....nel tuo caso dovresti creare una regola in .httpd che mappa i file .html nei corrispondenti file .php, ovviamente non devi creare una regola per ogni file, bensì usando le espressioni regolari puoi creare una regola unica

    il problema di questa soluzione è che devi creare 2000 e passa file .php e a che pro? praticamente sarebbe un lavoro inutile, visto che tutti i file .html che hai contengono script .php, tanto vale dire al server di passare i file .html tramite il parser PHP

    una cosa però non mi è chiara....visto che usi PHP perchè hai creato 2000 file? non era meglio creare un solo script PHP e mettere i contenuti in un DB dal quale poi lo script li avrebbe recuperati per costruire le pagine al volo?


  • User Attivo

    @paolino said:

    una cosa però non mi è chiara....visto che usi PHP perchè hai creato 2000 file? non era meglio creare un solo script PHP e mettere i contenuti in un DB dal quale poi lo script li avrebbe recuperati per costruire le pagine al volo?

    Tieni presente che la prima pagina del sito è stata fatta con frontpage ed una bella tabellina, poi sono arrivati i fogli di stile, poi i div, poi l'xhtml, e così via. Insomma sono un po' auto e un po' forum-aiuto-didatta!