- Home
- Categorie
- Coding e Sistemistica
- Hosting, Server e Domini
- Problema interpretazione .htm come .php su server dedicato
-
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.
-
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
-
@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'è?
-
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
-
@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!
-
@mypersonaltrainer said:
Arghhh! Sono 2000 e passa pagine!
...per questo hanno introdotto le espressioni regolari.
Io avrei seguito questa strada.
ciao
sergio
-
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 ?
-
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 tipoRewriteEngine 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
-
@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?
-
@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!