Pagina 1 di 1

Webdesign e apache, come eliminare le sottocartelle locali?

Inviato: sab 5 mag 2007, 2:42
da sberla54
Ciao a tutti.

Spero che qualcuno mi sappia aiutare qui, perche' sui forum di webdesign solitamente mi ascoltano poco.

Il problema e semplice ed anche stupido, pero' mi crea non pochi casini.

In pratica non riesco a liberarmi delle sottocartelle locali, nelle quali sto creando il sito, quando vado a fare l'upload o anche quando devo usare link assoluti in qualche in qualche componente del sito.

La document root di apache e':
/var/www/htdocs

ed io lavoro su vari siti contemporaneamente mettendoli in delle sottocartelle:
/var/www/htdocs/sito01
/var/www/htdocs/sito02
/var/www/htdocs/sito03

Mi sembrava una cosa naturale.

Il problema e' che quando devo, ad esempio, inserire un file in un componente per i download, non posso usare link assoluti e quindi mi tocca mettere i files sparsi per chissa' quali sottocartelle.
In pratica io vorrei linkare i files in questo modo, per tenerli ordinati in directory ben evidenti:
/download/video/video01.avi
/images/news/news02.html

ed invece mi tocca usare dei link relativi, che mi permettono di utilizzare solo sottocartelle delle directory dei componenti.
Ad esempio:
/var/www/htdocs/frontedonda.it/images/stories/easygallery/21
per le gallerie immagini.

Oppure posso usare link assoluti che comprendono la sottocartella di sviluppo:
/var/www/htdocs/sito01/download/file01.zip
che e' anche brutto da vedere online...

Inoltre, il problema forse piu' grave e' che quando vado a fare l'upload di questi siti in remoto, ovviamente anche la' non c'e' la sottocartella /sito01/ e questo crea dei problemi ai vari componenti del sito, non facendolo funzionare, ed inoltre ri-incasina i link assoluti.
Se faccio l'upload di tutta la directory di sviluppo fa' schifo...nn si sono mai visti siti cosi'....verrebbe fuori tipo:
http://www.sito01.it/sito01/index.php

Ho provato a modificare i config di Joomla ma non ho trovato niente.

Ho provato, da poco, a modificare la document root di apache a seconda di quale sito io stia usando al momento, ma ho visto che, dopo aver configurato tutti i file di configurazione di Joomla e credo anche dei database MySql, la cosa non funziona ed il sito comincia a perdere i pezzi.
Probabilmente dovrei trovare e togliere tutti i riferimenti alla sottocartella dai file di configurazione sparsi in giro.

Detto questo, pensavo a delle possibili soluzioni, ad esempio:
1) Creare, in qualche modo, dei sottodomini fittizi che, puntati dal browser, vadano direttamente alla sottocartella locale.
Ad esempio.
http://sito01.localhost.it/
che abbia come document root
/var/www/htdocs/sito01/

Pero' non so come farlo e non sono neppure sicuro che funzioni.
Installo un server dns locale, configuro la connessione e faccio in modo di inserire questi sottodomini?
Vado a modificate /etc/hosts? (ho provato ma nn sono riuscito).

2) Trovo il modo di pulire, magari con uno script, i file di configurazione ed il database mysql (per i link assoluti), togliendo "/sito01".
Anche qui ho i miei dubbi che funzioni e attualmente nn so come farlo.


C'e' qualche metodo piu' semplice?
A me sembra un problema terribilmente banale, ma lo stesso nn riesco a venirne fuori.
Penso che chiunque realizzi siti lavori a piu' progetti contemporaneamente, dentro sottocartelle....o almeno io ho sempre pensato si facesse cosi.

Io lavoro per lo piu' con Joomla 1.0 ma ho montato anche un sito in phpnuke 6.9 ed anche quello ha avuto problemi col trovare il database.

Mi sapete aiutare, per cortesia?

Ci dev'essere una soluzione semplice :)

Grazie!!

Inviato: sab 5 mag 2007, 7:51
da aschenaz
Io, coi pochi siti che ho fatto, non ho mai avuto questa esigenza (sempre un sito per dominio).
Penso che, come dici tu, la cosa vada gestita coi sottodomini (che devono essere previsti dal piano di hosting).

Comunque, volevo segnalarti questa community, molto attiva e frequentata da persone gentili e disponibili.

Sorry.

Inviato: sab 5 mag 2007, 10:15
da ccts2002
non so se ho capito il tuo problema, ma provo a darti una soluzione...
per cominciare, hai php?
se si, potresti creare dei file tipo:

Codice: Seleziona tutto

<?php
$baseurl="/var/www/htdocs/sito1"
?>

Codice: Seleziona tutto

<?php
$baseurl="/var/www/htdocs/sito2"
?>
etc, posizionarli nella directory dove hai l'index.html (o .php) e poi includerli in ogni pagina .php mediante:

Codice: Seleziona tutto

<?php
require "*"
?>
e poi al limite quando fai l'upload del sito ti basta modificare solo quel file.
per quanto riguarda i link relativi, non ho capito una cosa...
perché dici:
....
ed invece mi tocca usare dei link relativi, che mi permettono di utilizzare solo sottocartelle delle directory dei componenti.
Ad esempio:
/var/www/htdocs/frontedonda.it/images/stories/easygallery/21
per le gallerie immagini.
...
non per sembrare stupido, ma perché se devi risalire tra le directory non usi

Codice: Seleziona tutto

../..
?

ciao e facci sapere