Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. Categorie
    3. Gli Off Topic
    4. Tutti i Software
    5. [APACHE] Rewriterule dentro un Virtualhost che non funziona
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • G
      giacomo79 User Attivo • ultima modifica di

      [APACHE] Rewriterule dentro un Virtualhost che non funziona

      Salve a tutti,
      ho un virtualhost così configurato:

      
      <VirtualHost *>
              ServerAdmin ...@...
              DocumentRoot /var/www/dir
              <Directory /var/www/dir>
                      Options Indexes FollowSymLinks MultiViews
                      AllowOverride All
                      Order allow,deny
                      allow from all
              </Directory>
      
              ServerName *.dominio.it
      
              RewriteEngine On
              RewriteRule ^(.*).dominio.it /var/www/dir/$1/ 
      </VirtualHost>
      
      

      In pratica vorrei che le richieste per indirizzi di terzo livello venissero redirezionati nelle directory apposite.
      Solo che non funziona in quanto ogni richiesta di questo tipo va a finire nella DocumentRoot definita ("/var/www/dir"), fregandosene della regola.

      Sto sbagliando qualcosa?

      grazie

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • L
        linuxmafiait User Attivo • ultima modifica di

        Cioè non ho capito se io scrivo
        fdghsfdgsh.tuodominio.it oppure
        jdscfds.tuodominio.it oppure
        3765e832.tuodominio.it deve rispondere il tuo web server con una sezione apposta dedicata ?

        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • G
          giacomo79 User Attivo • ultima modifica di

          @linuxmafiait said:

          Cioè non ho capito se io scrivo
          fdghsfdgsh.tuodominio.it oppure
          jdscfds.tuodominio.it oppure
          3765e832.tuodominio.it deve rispondere il tuo web server con una sezione apposta dedicata ?
          Si, e deve puntare rispettivamente a:
          /var/www/fdghsfdgsh/
          /var/www/jdscfds/
          /var/www/3765e832/

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • L
            linuxmafiait User Attivo • ultima modifica di

            <VirtualHost *:80>
            ServerAdmin [EMAIL="[email protected]"][email protected][/EMAIL]
            DocumentRoot /var/www/htdocs/tuodominio
            ServerName tuodominio.it
            </VirtualHost>

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • G
              giacomo79 User Attivo • ultima modifica di

              @linuxmafiait said:

              <VirtualHost *:80>
              ServerAdmin [EMAIL="[email protected]"][email protected][/EMAIL]
              DocumentRoot /var/www/htdocs/tuodominio
              ServerName tuodominio.it
              </VirtualHost>
              Non ho mica capito, come fa a fare il redirect verso le directory giuste?

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • L
                linuxmafiait User Attivo • ultima modifica di

                Il redirect lo fa il web server quando riceve la richiesta per un determinato dominio :

                Se nel mio browser scrivo sottodominio.tuodominio.it e nel tuo file di conf c'è una direttiva come questa :
                <VirtualHost *:80>
                ServerAdmin [EMAIL="[email protected]"][email protected][/EMAIL]
                DocumentRoot /var/www/htdocs/tuodominio/tuosottodominio
                ServerName sottodominio.tuodominio.it
                </VirtualHost>

                il web server mi mostrerà le pagine residenti nella dir /var/www/htdocs/tuodominio/tuosottodominio del tuo server.

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • G
                  giacomo79 User Attivo • ultima modifica di

                  @linuxmafiait said:

                  Il redirect lo fa il web server quando riceve la richiesta per un determinato dominio :

                  Se nel mio browser scrivo sottodominio.tuodominio.it e nel tuo file di conf c'è una direttiva come questa :
                  <VirtualHost *:80>
                  ServerAdmin [EMAIL="[email protected]"][email protected][/EMAIL]
                  DocumentRoot /var/www/htdocs/tuodominio/tuosottodominio
                  ServerName sottodominio.tuodominio.it
                  </VirtualHost>

                  il web server mi mostrerà le pagine residenti nella dir /var/www/htdocs/tuodominio/tuosottodominio del tuo server.
                  Capito, ma il mio problema è che i domini di 3° livello sono dinamici, quindi mi serve una rewriterule per redirezionare "qualsiasi" richiesta nella directory giusta.

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • G
                    giacomo79 User Attivo • ultima modifica di

                    Nessuno sa darmi una mano?

                    😞

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • king.hack
                      king.hack Super User • ultima modifica di

                      Non ho mai affrontato un problema simile al tuo fin' ora però provo a risponderti lo stesso con una soluzione che mi è venuta a mente (potrebbero benissimo essercene altre... )

                      Premessa:
                      quanto segue l' ho trovato da sezione FAQ di Supporto da gestore di hosting italiano.

                      Come devo procedere per impostare un dominio di 3* livello del tipo http://forum.dominio.ext?

                      Se desidera procedere con la creazione dei sottodomini deve agire come segue:

                      1. andare nel CPANEL e cliccare sull'icona SERVIZIO DNS per poi accedere al pannello del DNS.

                      2. a questo punto aggiungere un record di tipo CNAME con nome ad esempio "forum" e valore "www.dominio.ext." (attenzione al puntino finale).

                      3. Uscire dal CPANEL e tornare al pannello di controllo accedendo alla sezione "FILE MANAGER".

                      4. Dal file manager se in elenco non compare un file ".htaccess" procedere alla creazione dello stesso cliccando su "nuovo file"

                      5. Nella casella "nome per il nuovo file" scrivere ".htaccess" e nello spazio sottostante eliminare la scritta "[Enter code here]" e sostituirla con ad esempio:

                      ###################
                      RewriteEngine On
                      Options +FollowSymlinks
                      RewriteBase /
                      RewriteCond %{HTTP_HOST} forum.dominio.ext
                      RewriteCond %{REQUEST_URI} !sottodir/
                      RewriteRule ^(.*)$ sottodir/$1
                      ###################

                      dove: forum.dominio.it è il nome da assegnare al sottodominio, sottodir e' il nome della directory di cui visualizzare il contenuto.

                      A questo punto il mio cervello malato ha estrapolato una soluzione del genere ovvero creare uno scriptino magari in php che:

                      1. crei una sotto directory sulla root del tuo dominio con nome che gli indichi te o uno random;
                      2. vada a scrivere il nome della nuova directory nel .htaccess del tuo dominio di secondo livello cosi da aggiornare le regole per il mod_rew;

                      UPDATE]Magari questo non servirebbe:UPDATE]Ora mancherebbe di capire come poter dire ad Apache che esiste un dominio di terzo livello con nome = a dir creata sotto tuo_dominio.ext

                      ... ma magari è un passo verso la soluzione definitiva.

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • G
                        giacomo79 User Attivo • ultima modifica di

                        @KING_Hack said:

                        Non ho mai affrontato un problema simile al tuo fin' ora però provo a risponderti lo stesso con una soluzione che mi è venuta a mente (potrebbero benissimo essercene altre... )
                        [CUT]
                        ... ma magari è un passo verso la soluzione definitiva.
                        Può essere una soluzione, ma il punto è perchè il rewriterule non funziona nel file dei virtual host, visto che dovrebbe funzionare...:(

                        In pratica dovrei poter prendere il codice che mi hai scritto tu e inserirlo nel file dei virtual host.

                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        • king.hack
                          king.hack Super User • ultima modifica di

                          ...provo ad andare per tentativi a questo punto.

                          Allora immagino che potrebbe esserci un problema a monte ovvero, sei sicuro che Apache sia stato compilato con quel modulo attivo?

                          Verifica con un file per es test.php in cui ci metti all' interno questo:

                          <?php
                          phpinfo();
                          ?>
                          

                          Poi accertati che compaia nel blocco Loaded Modules la voce mod_rewrite

                          0 Miglior Risposta Ringrazia Cita Rispondi

                            1 Risposta Ultima Risposta
                          • G
                            giacomo79 User Attivo • ultima modifica di

                            @KING_Hack said:

                            ...provo ad andare per tentativi a questo punto.

                            Allora immagino che potrebbe esserci un problema a monte ovvero, sei sicuro che Apache sia stato compilato con quel modulo attivo?

                            Verifica con un file per es test.php in cui ci metti all' interno questo:

                            <?php
                            phpinfo();
                            ?>
                            

                            Poi accertati che compaia nel blocco Loaded Modules la voce mod_rewrite
                            C'è, sicurissimo.

                            0 Miglior Risposta Ringrazia Cita Rispondi

                              1 Risposta Ultima Risposta
                            • king.hack
                              king.hack Super User • ultima modifica di

                              Ho trovato questo 3d sulla lista del LUG di Prato, magari ti può esser utile:
                              http://lists.prato.linux.it/pipermail/plug/2006-April/033851.html

                              Ora che ho dato un occhio alla discussione della lista, ne deduco chiaramente che cmq bisogna metter per forza mano anche al server DNS.

                              0 Miglior Risposta Ringrazia Cita Rispondi

                                1 Risposta Ultima Risposta
                              • G
                                giacomo79 User Attivo • ultima modifica di

                                @KING_Hack said:

                                Ora che ho dato un occhio alla discussione della lista, ne deduco chiaramente che cmq bisogna metter per forza mano anche al server DNS.
                                C'è già tutto anche nel DNS...ora provo a dare un'occhiata al link, grazie...:)

                                0 Miglior Risposta Ringrazia Cita Rispondi

                                  1 Risposta Ultima Risposta
                                • king.hack
                                  king.hack Super User • ultima modifica di

                                  Sto provando su un mio serverino la regola di Mod_rewrite che hai impostato sul tuo Vhost... ed ho provato ad impostare quanto scritto sulla discussione in lista per quanto riguarda il server dns...

                                  anche a me da picche :mmm:

                                  0 Miglior Risposta Ringrazia Cita Rispondi

                                    1 Risposta Ultima Risposta
                                  • G
                                    giacomo79 User Attivo • ultima modifica di

                                    @KING_Hack said:

                                    Sto provando su un mio serverino la regola di Mod_rewrite che hai impostato sul tuo Vhost... ed ho provato ad impostare quanto scritto sulla discussione in lista per quanto riguarda il server dns...

                                    anche a me da picche :mmm:
                                    Non capisco infatti, si tratta di una normalissima regola che trovi in ogni howto dei virtual host di apache...:(

                                    0 Miglior Risposta Ringrazia Cita Rispondi

                                      1 Risposta Ultima Risposta
                                    • L
                                      linuxmafiait User Attivo • ultima modifica di

                                      Purtroppo neanche a me è mai capitata una configurazione del genere ma devo dire che è molto interessante.
                                      In questo periodo non ho molto tempo quindi non posso fare nessun tipo di prova sui miei server però ho trovato questo link
                                      http://www.risorse.net/apache/url_redirect.asp
                                      vedi un po cosa puoi tirarci fuori e comunque non dimenticare mai i siti di OpenSkills e di Sistemistiindipendenti.

                                      0 Miglior Risposta Ringrazia Cita Rispondi

                                        1 Risposta Ultima Risposta
                                      • G
                                        giacomo79 User Attivo • ultima modifica di

                                        @linuxmafiait said:

                                        Purtroppo neanche a me è mai capitata una configurazione del genere ma devo dire che è molto interessante.
                                        In questo periodo non ho molto tempo quindi non posso fare nessun tipo di prova sui miei server però ho trovato questo link
                                        http://www.risorse.net/apache/url_redirect.asp
                                        vedi un po cosa puoi tirarci fuori e comunque non dimenticare mai i siti di OpenSkills e di Sistemistiindipendenti.
                                        Ho risolto inserendo questo codice:

                                        
                                        RewriteEngine on
                                        RewriteCond %{HTTP_HOST} !^community\.
                                        RewriteCond %{HTTP_HOST} ^([^.]+)\.dominio\.it
                                        RewriteRule ^(.*)$  /var/www/community/%1/index.html 
                                        
                                        

                                        La cosa strana è che se tolgo "index.html" dalla rewriterule il tutto non funziona perchè quando apro la pagina ottengo un indirizzo di questo tipo:
                                        http://dir.dominio.it/index.html/index.html/.../index.html/

                                        In pratica "index.html" viene ripetuto una ventina di volte.

                                        Sapete perchè?

                                        Cmq tranne questo piccolo intoppo con il codice iniziale funziona.

                                        Aggiungo: se lo stesso codice lo metto nel file .htacces non ho questo problema.

                                        0 Miglior Risposta Ringrazia Cita Rispondi

                                          1 Risposta Ultima Risposta
                                        Caricamento altri post
                                        Rispondi
                                        • Topic risposta
                                        Effettua l'accesso per rispondere
                                        • Da Vecchi a Nuovi
                                        • Da Nuovi a Vecchi
                                        • Più Voti