Back to top

Autore Topic: Riscrittura url tramite .htaccess da sottocartella a root  (Letto 5021 volte)

Offline Nuklear

  • Nuovo arrivato
  • *
  • Post: 43
    • Mostra profilo
Ho installato un sito con joomla 3.3.6 all'url www.sito.com/azienda. Dato che vorrei togliere "/azienda" dall'url del sito in modo che, per esempio, da "www.sito.com/azienda/contatti" diventi "www.sito.com/contatti" ho inserito questo codice nel file .htaccess posto nella root:
Codice: [Seleziona]
RewriteBase /azienda
RewriteRule ^$ /azienda/ [QSA,L]
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule !^(azienda)(/.*)?$ /azienda%{REQUEST_URI} [QSA,L]
Il problema è che funziona solo con l'url principale nel senso che se digito "www.sito.com" rimane tale e non diventa "www.sito.com/azienda", mentre per gli altri url rimane sempre con "'www.sito.com/azienda".
Cosa sbaglio?

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Riscrittura url tramite .htaccess da sottocartella a root
« Risposta #1 il: 17 Dic 2014, 15:13:11 »
Non fai prima a spostare  tutto nella root? Tieni presente che con .htaccess otterrai solo un redirect ma nell'url rimarrà sempre la sottocartella. Unico modo editare il file httpdconf di apache.

Offline Nuklear

  • Nuovo arrivato
  • *
  • Post: 43
    • Mostra profilo
Re:Riscrittura url tramite .htaccess da sottocartella a root
« Risposta #2 il: 17 Dic 2014, 18:19:34 »
Potrei ma non voglio per motivi miei. Comunque... Due domande:
1. per httpdconf di apache credo che mi debba rivolgere all'hosting e non credo che sia personalizzabile... vero?
2. C'è per caso un componente che permette di fare quello che ho chiesto?

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Riscrittura url tramite .htaccess da sottocartella a root
« Risposta #3 il: 17 Dic 2014, 20:14:10 »
Si fa da .htaccess ma serve solo che scrivendo l'url senza sottocartella ti manda nella sottocartella. In pratica il concetto è che se hai motivi per installare in una sottocartella forse ti serve lo spazio root per metterci qualcosa e come sai in uno spazio non possono starci due cose uguali insieme.

Offline Nuklear

  • Nuovo arrivato
  • *
  • Post: 43
    • Mostra profilo
Re:Riscrittura url tramite .htaccess da sottocartella a root
« Risposta #4 il: 17 Dic 2014, 21:42:27 »
Al di là dei motivi, come si fa in .htaccess?

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Riscrittura url tramite .htaccess da sottocartella a root
« Risposta #5 il: 18 Dic 2014, 08:50:20 »
Aggiungi questa linea

 RewriteRule ^azienda/(.*)$ /$1 [R=301,L]

Offline d3vi

  • Appassionato
  • ***
  • Post: 212
  • Sesso: Maschio
    • Mostra profilo
Re:Riscrittura url tramite .htaccess da sottocartella a root
« Risposta #6 il: 18 Dic 2014, 08:57:31 »
In qualsiasi punto di .htaccess?

Offline d3vi

  • Appassionato
  • ***
  • Post: 212
  • Sesso: Maschio
    • Mostra profilo
Re:Riscrittura url tramite .htaccess da sottocartella a root
« Risposta #7 il: 18 Dic 2014, 09:01:09 »
Mi da un loop di reindirizzamento... Scusate se mi sono intromesso ma ho anch'io lo stesso problema...
« Ultima modifica: 18 Dic 2014, 09:03:28 da d3vi »

Offline Nuklear

  • Nuovo arrivato
  • *
  • Post: 43
    • Mostra profilo
Re:Riscrittura url tramite .htaccess da sottocartella a root
« Risposta #8 il: 18 Dic 2014, 09:38:37 »
L'ho inserito ma l'url rimane uguale...

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Riscrittura url tramite .htaccess da sottocartella a root
« Risposta #9 il: 18 Dic 2014, 09:51:10 »
Ma se leggevi ti accorgevi che ho premesso che l'url non cambia, è solo un redirect, in pratica tu hai il sito a roma e vuoi che sia raggiungibile da milano, col redirect scrivi milano ma ti porta a roma dove appunto hai il sito. Se lo vuoi a milano e basta , lo sposti a milano, stop.

Offline Nuklear

  • Nuovo arrivato
  • *
  • Post: 43
    • Mostra profilo
Re:Riscrittura url tramite .htaccess da sottocartella a root
« Risposta #10 il: 18 Dic 2014, 11:25:33 »
In pratica quello che ho fatto io con questo codice:
Codice: [Seleziona]
RewriteBase /azienda
RewriteRule ^$ /azienda/ [QSA,L]
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule !^(azienda)(/.*)?$ /azienda%{REQUEST_URI} [QSA,L]
o no?

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:Riscrittura url tramite .htaccess da sottocartella a root
« Risposta #11 il: 18 Dic 2014, 11:45:46 »
Guarda quello che hai fatto tu è diverso, io ti ho dato una singola riga e comunque se il risultato è uguale allora sono buone anche quelle. Sono comunque prese dalla rete, l'importante è porre i termini di ricerca in modo che soddisfino esattamente le richieste. Alternativa è studiarsi il corretto uso dell'.htaccess.

Offline Nuklear

  • Nuovo arrivato
  • *
  • Post: 43
    • Mostra profilo
Re:Riscrittura url tramite .htaccess da sottocartella a root
« Risposta #12 il: 18 Dic 2014, 18:53:51 »
Risolto!  8)
1. Ho inserito dentro .htaccess solo questo codice:
Codice: [Seleziona]
Options +FollowSymLinks
# .htaccess main domain to subdirectory redirect
# Do not change this line.
Options -Indexes
RewriteEngine on
Options +FollowSymLinks
rewritebase /
RewriteCond %{HTTP_HOST} !^www\.sito\.com$ [NC]
RewriteRule .* http://www.sito.com/ [L,R=301]
RewriteRule ^$ azienda/index.php [L]
RewriteCond %{DOCUMENT_ROOT}/azienda%{REQUEST_URI} -f
RewriteRule .* azienda/$0 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* azienda/index.php?q=$0 [QSA]

2. in configuration.php modificata la riga:
Codice: [Seleziona]
public $live_site = 'http://www.sito.com';
Grazie!
« Ultima modifica: 19 Dic 2014, 00:19:18 da Nuklear »

 



Web Design Bolzano Kreatif