Visualizzazione risultati 1 fino 13 di 13

Discussione: mod rewrite su Aruba - Errore 500

  1. #1
    Guest

    Predefinito mod rewrite su Aruba - Errore 500

    Salve a tutti, premetto che coi file .htaccess sono alle prime armi, ma ho la necessità di compiere la seguente operazione su un sito hostato su Aruba:

    Praticamente tutti gli URL che riguardano quel sito dovranno essere redirezionati a una sottocartella del sito stesso, senza che l'utente se ne accorga.

    Quindi ad esempio all'url "www.sito.com/file.jpg" il server dovrebbe rispondere con la pagina "www.sito.com/cartella/file.jpg".

    Ho messo su il seguente file .htaccess nella root del sito:

    Codice:
    RewriteEngine on
    RewriteBase / 
    
    RewriteRule ^(.+)$ cartella/$1
    Ma mi dà errore 500, qualcuno sa dirmi come mai?

    EDIT: ps. ho provato sia con la stringa "RewriteBase /" che senza, stesso risultato.
    Ultima modifica di Zorinik : 22-05-2008 alle ore 15.35.43

  2. #2
    L'avatar di miki92
    miki92 non è connesso AlterGuru 2500
    Data registrazione
    21-04-2007
    Residenza
    Procida (NA)
    Messaggi
    4,226

    Predefinito

    Prova cosi:
    Codice PHP:
    RewriteEngine on
    RewriteBase
    /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond
    %{REQUEST_FILENAME} !-d
    RewriteCond
    %{REQUEST_URI} !^/cartella/
    RewriteRule ^(.*)$ /cartella/$1
    Apprezzi l'aiuto? Offrimi un caffè!

  3. #3
    Guest

    Predefinito

    Perfetto funziona, grazias :P

    ora devo capire perché prima non funzionava e con questo codice sì

    ps. ultima richiesta, se io volessi applicare una sorta di eccezione per alcuni files/cartelle (pochi, 3 files e due cartelle per la precisione)che invece risiedono nella root e non devono seguire quindi la regola dell'.htaccess?

  4. #4
    L'avatar di miki92
    miki92 non è connesso AlterGuru 2500
    Data registrazione
    21-04-2007
    Residenza
    Procida (NA)
    Messaggi
    4,226

    Predefinito

    Prima non funzionava probabilmente perchè gli mancavano le condizioni di riscrittura mentre ora il codice è davvero completo.

    Citazione Originalmente inviato da Zorinik Visualizza messaggio
    ps. ultima richiesta, se io volessi applicare una sorta di eccezione per alcuni files/cartelle (pochi, 3 files e due cartelle per la precisione)che invece risiedono nella root e non devono seguire quindi la regola dell'.htaccess?
    Attenzione: Il codice che ti ho postato io riscrive in sito/file.ext solo i file contenuti nella cartella cartella/file.ext non per tutte le directory del sito.
    Apprezzi l'aiuto? Offrimi un caffè!

  5. #5
    Guest

    Predefinito

    Citazione Originalmente inviato da miki92 Visualizza messaggio
    Prima non funzionava probabilmente perchè gli mancavano le condizioni di riscrittura mentre ora il codice è davvero completo.
    Mmh ok, vedrò di capirne di più su queste "regole di riscrittura"

    Citazione Originalmente inviato da miki92 Visualizza messaggio
    Attenzione: Il codice che ti ho postato io riscrive in sito/file.ext solo i file contenuti nella cartella cartella/file.ext non per tutte le directory del sito.
    Ah perfetto grazie mille, era proprio quel che mi ci voleva

    EDIT
    Ehm... non avevo provato ad accedere al sito come www.sito.com, ma solo come www.sito.com/index.php... il primo URL mi restituisce ora errore 403 - Forbidden
    Ultima modifica di Zorinik : 22-05-2008 alle ore 16.14.41

  6. #6
    L'avatar di miki92
    miki92 non è connesso AlterGuru 2500
    Data registrazione
    21-04-2007
    Residenza
    Procida (NA)
    Messaggi
    4,226

    Predefinito

    Proviamo cosi:
    Codice PHP:
    RewriteEngine on
    RewriteBase
    /
    DirectoryIndex index.php
    RewriteCond
    %{REQUEST_FILENAME} !-f
    RewriteCond
    %{REQUEST_FILENAME} !-d
    RewriteCond
    %{REQUEST_URI} !^/cartella/
    RewriteRule ^(.*)$ /cartella/$1
    Apprezzi l'aiuto? Offrimi un caffè!

  7. #7
    Guest

    Predefinito

    Errore 500 -_- ma chi l'ha inventato st'errore? XD

    EDIT

    cercando cercando ho scoperto che Aruba non supporta la direttiva DirectoryIndex... o.O aiuto, e mo'? O.o

    per ora ho risolto temporaneamente mettendo una index con la sola stringa PHP
    Codice PHP:
    header('Location: cartella');
    ma così però nell'URL del browser scrive dall'inizio la cartella, e quindi non si risolve niente, l'htaccess è inutile in questo caso.... come posso far sì che tutto questo sistema funzioni anche con l'index digitando semplicemente www.sito.com ?
    Ultima modifica di Zorinik : 22-05-2008 alle ore 17.00.45

  8. #8
    L'avatar di miki92
    miki92 non è connesso AlterGuru 2500
    Data registrazione
    21-04-2007
    Residenza
    Procida (NA)
    Messaggi
    4,226

    Predefinito

    Non supporta la DirectoryIndex...bah strano. Ma comunque sei sicuro che il tuo sito non sia raggiungibile tramite sito.com/? Prova a postare il link magari tu non lo vedi ma noi si. Hai provato a cambiare l'estensione della index magari funziona?
    Apprezzi l'aiuto? Offrimi un caffè!

  9. #9
    Guest

    Predefinito

    Improbabile penso che un errore server side a me capiti e a voi no
    comunque le estensioni della index supportate da aruba sono, a quanto ho letto .htm, .html, .php, .shtml... e di queste mi pare solo .php supporti il linguaggio PHP; e la index di questo sito, come tutto il sito d'altronde, usa il PHP quindi nn saprei come cambiare l'estensione senza comprometterne il funzionamento...
    Ultima modifica di Zorinik : 22-05-2008 alle ore 18.44.41

  10. #10
    L'avatar di miki92
    miki92 non è connesso AlterGuru 2500
    Data registrazione
    21-04-2007
    Residenza
    Procida (NA)
    Messaggi
    4,226

    Predefinito

    Bah forse è inutile o è una sciocchezza ma prova cosi:
    Codice PHP:
    RewriteEngine on
    RewriteBase
    /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond
    %{REQUEST_FILENAME} !-d
    RewriteCond
    %{REQUEST_URI} !^/cartella/
    RewriteRule ^(.*)$ /cartella/$1
    Redirect permanent index
    .html index.php
    Redirect permanent index
    .htm index.php
    Redirect permanent index
    .shtml index.php
    Apprezzi l'aiuto? Offrimi un caffè!

  11. #11
    Guest

  12. #12
    L'avatar di miki92
    miki92 non è connesso AlterGuru 2500
    Data registrazione
    21-04-2007
    Residenza
    Procida (NA)
    Messaggi
    4,226

    Predefinito

    Non puoi usare questo per portare tutti i browser sulla stessa pagina?
    Apprezzi l'aiuto? Offrimi un caffè!

  13. #13
    Guest

    Predefinito

    Ci sono riuscito

    mi è bastato aggiungere (non so come ho fatto ad avere quest'idea assurda) all'htaccess la seguente regola:

    Codice:
    RewriteRule $ /cartella/
    ed ora anche la index viene redirezionata

    Grazie Miki :)

Regole di scrittura

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