Visualizzazione risultati 1 fino 7 di 7

Discussione: creare un secondo reindirizzamento con htaccess

  1. #1
    progettodroppy non è connesso Neofita
    Data registrazione
    06-04-2009
    Messaggi
    26

    Predefinito creare un secondo reindirizzamento con htaccess

    Premetto che nel mio sito tramite htaccess ho gia inserito una regola di reindirizzamento per accedere ad una versione wordpress:

    RewriteEngine On
    RewriteCond %{HTTP_HOST} =blog.progettodroppy.altervista.org
    RewriteRule (.*) /blog/$1 [L]

    volevo aggiungerne un'altra che digitando testing.progettodroppy/altervista.org mi indirizzasse ad una cartella situata in /testing che avrà un semplice file index.htm

    ho gia provato a copiare il codice sopra sotto quelle gia esistente cambiando però la parola "blog" in "testing" così:

    RewriteEngine On
    RewriteCond %{HTTP_HOST} =blog.progettodroppy.altervista.org
    RewriteRule (.*) /blog/$1 [L]
    RewriteCond %{HTTP_HOST} =testing.progettodroppy.altervista.org
    RewriteRule (.*) /testing/$1 [L]

    ma non funziona mi dà un errore server. la cartella ovviamente esiste e ce anche il file index.htm

    Oppure volevo chiedere se creando un sottodominio da gestione domini rischio di perdere il file index attuale nella cartella principale perchè ho gia provato e mi ha dato un errore strano ma non voglio rischiare di perdere il file index attuale ?

  2. #2
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,894

    Predefinito

    Codice:
    RewriteEngine On
    RewriteBase /
    RewriteCond %{HTTP_HOST} =blog.progettodroppy.altervista.org
    RewriteRule (.*) https://blog.nome.altervista.org%{REQUEST_URI} [L,R=301]
    RewriteCond %{HTTP_HOST} =testing.progettodroppy.altervista.org
    RewriteRule (.*) http://testing.nome.altervista.org%{REQUEST_URI} [L,R=301]
    Non devi utilizzare i sottodomini del pannello altervista poiché crea un file index.php che farà alcune operazioni in base al header host ma piuttosto scegli cartelle e in quel modo non entrerai in loop (il codice precedentemente entrerà il loop ma è solo un test).
    Nota* / questa è la root e in quel scenario verrà applicato anche a sottocartelle, di consuetudine si usa sovrascrivere tale regola in altre sottocartelle quando dovrai fare giustamente qualcosa di diverso.
    Su altervista se non esiste index.html cerca index.htm altrimenti index.php come file index di apache.
    Ultima modifica di darbula : 26-03-2021 alle ore 17.04.37

  3. #3
    progettodroppy non è connesso Neofita
    Data registrazione
    06-04-2009
    Messaggi
    26

    Predefinito

    Citazione Originalmente inviato da darbula Visualizza messaggio
    Codice:
    RewriteEngine On
    RewriteBase /
    RewriteCond %{HTTP_HOST} =blog.progettodroppy.altervista.org
    RewriteRule (.*) https://blog.nome.altervista.org%{REQUEST_URI} [L,R=301]
    RewriteCond %{HTTP_HOST} =testing.progettodroppy.altervista.org
    RewriteRule (.*) http://testing.nome.altervista.org%{REQUEST_URI} [L,R=301]
    Non devi utilizzare i sottodomini del pannello altervista poiché crea un file index.php che farà alcune operazioni in base al header host ma piuttosto scegli cartelle e in quel modo non entrerai in loop (il codice precedentemente entrerà il loop ma è solo un test).
    Nota* / questa è la root e in quel scenario verrà applicato anche a sottocartelle, di consuetudine si usa sovrascrivere tale regola in altre sottocartelle quando dovrai fare giustamente qualcosa di diverso.
    Su altervista se non esiste index.html cerca index.htm altrimenti index.php come file index di apache.
    Con il codice dato da te che risultato avrei ? a me serve che rimanga attivo che digitando progettodroppy,alterv... vada alla directory principale, digitando blog.proget... vada a /blog, mentre digitando testing.proget... vada a /testing

    Solo questo ho bisogno altrimenti lascio com'è adesso. Grazie.

  4. #4
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,894

    Predefinito

    È una semplice errata riscrittura che legge l'header host, mentre a te occorre %{REQUEST_URI} anche se presente il sottodominio o non.
    https://httpd.apache.org/docs/curren...ml#rewritecond
    Se nella cartella blog WordPress l'url è http://nome.altervista.org/blog/index.php se ho un secondo progetto su testing avrò http://nome.altervista.org/testing/index.php scegli tu su come tradurlo poi in quel caso aggiungendo un redirect che punta al sottodominio.
    Puoi riuscirci da solo (questo eviterà problemi secondari del semplice copia/incolla)
    WordPress usa index.php ovunque è impossibile farlo coesistere con index.htm
    Ultima modifica di darbula : 26-03-2021 alle ore 17.51.07

  5. #5
    progettodroppy non è connesso Neofita
    Data registrazione
    06-04-2009
    Messaggi
    26

    Predefinito

    Citazione Originalmente inviato da darbula Visualizza messaggio
    È una semplice errata riscrittura che legge l'header host, mentre a te occorre %{REQUEST_URI} anche se presente il sottodominio o non.
    Ma quindi devo mettere dentro la parentesi al posto di request url l'indirizzo nelle cartelle?

  6. #6
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,894

    Predefinito

    Se non crei il file index.htm puoi affidarti direttamente alla gestione sottodominio dal pannello altervista il file index.php creato da loro farà il resto per richieste nella root.
    Così ti è più semplice? Se poi vuoi codice pronto cerca altrove.
    Ultima modifica di darbula : 26-03-2021 alle ore 17.58.21

  7. #7
    progettodroppy non è connesso Neofita
    Data registrazione
    06-04-2009
    Messaggi
    26

    Predefinito

    Grazie sembra che ho risolto, ho capito dove andava messo l'indirizzo della cartella. Ora va.

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •