• User Attivo

    Ciao, forse ti serve qualcosa de tipo:

    
    RewriteCond %{HTTP_HOST}    ^www\.(.*)\.institution\.org$
    RewriteRule .* http://www.ojs.institution.org/index.php/%1 [R, L]
    
    

    potrebbe essere non corretto!
    perdonami sono di fretta, fra un paio d'ore o domattina ti rispondo un po piu correttamente 😉

    ok editato per correggere
    Dovrebbe fare a caso tuo
    Ciao


  • User Attivo

    Aggiungo ancora:
    se tutti i domini www.nomegiornale.example.org hanno la stessa document root, puoi addirittura utilizzare le banali regole di rewrite tipo:

    
    RewriteCond %{HTTP_HOST}    ^www\.(.*)\.institution\.org$
    RewriteCond %{REQUEST_URI}    ^(.*)$
    RewriteRule .* /index.php/%1/$1 [QSA, L]
    
    

    modificabile a seconda delle esigenze 😉

    ciao


  • Super User

    se i giornali son tanti puoi mettere una wildcard sul dominio e seguire queste istruzioni 🙂


  • User Newbie

    Grazie infinite, ho smanettato con i consigli che mi avete dato e leggendo un po' di documentazione ho fatto questo:

            
    RewriteEngine On
    RewriteCond %{HTTP_HOST} ^www\.(.*)\.institution\.org$
    RewriteRule .* /index.php/%1/$1 [QSA,L] 
    
    ```E funziona! Nel senso che:
    [www.journal1.institution.org](http://www.journal1.institution.org) 
    mi porta effettivamente sulla pagina del journal1
    ovvero quella che senza rewrite è data dall'url:
    http://www.ojs.institution.org/index.php/journal1
    
    Solo che c'è un problema, non funzionano più i fogli di stile, non si vedono le immagini, non funzionano i link.
    
    Controllo nell'html prodotto, il link al foglio di stile appare così:
    http://www.journal1.institution.org/styles/common.css
    
    mentre il path reale è:
    http://www.ojs.institution.org/styles/common.css
    
    Se metto uno di questi due indirizzi nel browser, ottengo la pagina 
    di index del journal1 o di ojs, penso sia il modo di comportarsi del software 
    quando avviene una chiamata su un persorso che lui 
    non riconosce.
    
    Se invece metto il secondo indirizzo senza www:
    
    http://ojs.institution.org/styles/common.css
     
    ottengo il listato del css.
    
    A questo punto non so se è un problema del CMS o ancora del mod_rewrite.
    Grazie di cuore
    Orazio

  • Super User

    chiaramente essendoti cambiato l'indirizzo base e se usi url relativi non funziona niente.. 😉

    il metodo più veloce per risolvere è mettere in <head>

    <base href="http://www.ojs.institution.org/" />
    

  • User Attivo

    la soluzione di osvi è la più rapida, ma se vuoi smanettrare ancora con l'htaccess puoi aggiungere questo:

    
    RewriteEngine On
    RewriteCond %{HTTP_HOST} ^www\.(.*)\.institution\.org$
    RewriteCond %{HTTP_HOST} !^www\.ojs\.institution\.org$
    RewriteRule .* /index.php/%1/$1 [QSA,L]
    

    cosi in pratica non ti rtiscrive gli url di ojs, in quanto non è un giornale 😉

    Ciao


  • User Newbie

    Grazie, sto facendo dei tentativi ma ancora non si risolve il problema.
    Questo perchè nella head dei files compaiono alcune variabili di SMARTY che richiamano il path riscritto e non quello reale con cui funzionano CSS e Immagini.

    Ho scritto al forum di OJS:

    How can I hack the $baseUrl and the $cssUrl variables modifying statically the first part of URL to: "www.ojs.intitution.org"?e la risposta è stata:

    you should be able to get your static content (e.g. CSS) working with a mod_rewrite rule that supercedes your existing rules for cases where the index.php script is not specified.Sono piuttosto demoralizzato.
    grazie ancora


  • User Attivo

    Questa soluzoine puo andare bene?

    
    RewriteEngine On
    RewriteCond %{HTTP_HOST} ^www\.(.*)\.institution\.org$
    RewriteCond %{HTTP_HOST} !^www\.ojs\.institution\.org$
    #evitiamo di riscrivere tutto quello che non ha index.php nell'url
    RewriteCond %{REQUEST_URI} !/index\.php.*
    RewriteCond %{REQUEST_URI} ^(.*)$
    RewriteRule .* /index.php/%1/$1 [QSA,L]
    
    

  • User Newbie

    Thesee grazie,
    scusa se non ho risposto subito, ma ho preferito studiare ancora un po' e far frutto dei consigli giunti fin ora e ... la regola esatta sempre essere questa:

    
    RewriteEngine On
    RewriteCond %{HTTP_HOST} ^www\.(.*)\.institution\.org$
    RewriteCond %{HTTP_HOST} !^www\.ojs\.institution\.org$
    RewriteCond %{REQUEST_URI} !^/(public|templates|style)/.*$ 
    RewriteRule (.*) /index.php/%1/$1 [QSA,L]
    
    ```I path in:
    RewriteCond %{REQUEST_URI} !^/(public|templates|style)/.*$ 
    sono specifici del software ojs per i settaggi alle riviste
    
    E per ora sempbra funzionare!! Non abbiamo sperimentato il comportamento in fase di Admin, ti farò sapere.
    
    GRAZIE! GRAZIE! Grazie per l'aiuto!

  • User Attivo

    ottimo 😉 buon proseguimento 🙂