Visualizzazione Stampabile
-
Consiglio redirect 301
Buongiorno,
cerco di essere il piu sintetico possibile:
Ho un forum vbulletin in una sottodirectory /forum mentre nella document root
ho un sito realizzato con joomla. siccome voglio eliminare joomla e cominciare ad utilizzare la suite di vBulletin vorrei procedere cosi:
elimino joomla, sposto il forum nella document root e a questo punto effettuo l'upgrade alla suite, cosi facendo però perderei il posizionamento di tutti thread del forum quindi, o utilizzo la funzione "Forum Component URL" che "simula" la sottodirectory che avevo prima /forum ed il gioco è fatto o in alternativa posso mettere un file .htaccess nella vecchia sottodirectory /forum ormai vuota e qui utilizzare una regola di redirect.
Che mi consigliate? utilizzando il file .htaccess viene una cosa piu pulita forsa?
in caso mi potreste consigliare una buona regola che non punti al dominio principale ma che faccia interpretare per bene ad apache l'url richiesto?
Grazie :)
-
Installare il forum nella radice e aggiungere al file .htaccess all'inizio la regola, ad esempio:
Codice:
RewriteRule ^forum/(.*) http://www.dominio.tld/$1 [R=301,L]
-
ottimo funziona alla grande!!
l'ho posizionato qui, è uguale no? o Apache da una priorità in base alla riga?
Codice:
RewriteRule ^forum/(.*) http://www.dominio.tld/$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
# Forum
RewriteRule ^threads/.* showthread.php [QSA]
RewriteRule ^forums/.* forumdisplay.php [QSA]
RewriteRule ^members/.* member.php [QSA]
Considerando che quando utilizzerò il cms dovrò sostituire il file.htaccess con questo per la Suite:
Codice:
RewriteEngine on
# If you are having problems or are using VirtualDocumentRoot, uncomment this line and set it to your vBulletin directory.
# RewriteBase /forum/
# If you are having problems with the rewrite from content/ to , uncomment this line to turn MultiViews off.
# Options -MultiViews
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
# Forum
RewriteRule ^threads/.* showthread.php [QSA]
RewriteRule ^forums/.* forumdisplay.php [QSA]
RewriteRule ^members/.* member.php [QSA]
RewriteRule ^blogs/.* blog.php [QSA]
RewriteRule ^entries/.* entry.php [QSA]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
# MVC
RewriteRule ^(?:(.*?)(?:/|$))(.*|$)$ $1.php?r=$2 [QSA]
# Check MVC result
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^(.*)$ - [NC,L]
RewriteRule ^(.*)$ - [R=404,L]
In questo caso dove metto la regola?
dai che FORSE non ti scoccio più perché ho praticamente finito... sabato pomeriggio o domenica massimo farò il grande salto:)
Speriamo bene
Grazie ancora per l'aiuto
Fabio
-
Il file htaccess fornito con vbulletin purtroppo non funziona (ma è impossibile a dirglielo perché sanno solo loro come funziona).
Ecco il (lievemente modificato) file di vbulletin.it, già pronto anche per OdiSEO se lo vuoi mettere. Sostituisci il dominio con il tuo e hai fatto. La tua riga la metti dopo "RewriteEngine On":
Codice:
RewriteEngine On
# Require fully qualified domain
RewriteCond %{HTTP_HOST} !^www\.vbulletin\.it [NC]
RewriteRule ^(.*) http://www.vbulletin.it/$1 [R=301,L]
RewriteRule ^$ [L,QSA]
RedirectMatch 301 index.php/t-([0-9]+).html$ http://www.vbulletin.it/showthread.php?t=$1
# OdiSEO render sitemap to any search engine
RewriteRule ^sitemap.xml$ odiseo_sitemap.php [L]
# Old vBulletin rewrite (maintains compatibility with OdiSEO disabled, can be removed later)
RewriteRule ^threads/([0-9]+)(?:/?$|(?:-[^/]+))(?:/?$|(?:/page([0-9]+)?)) showthread.php?t=$1&page=$2&%{QUERY_STRING} [L]
RewriteRule ^forums/([0-9]+)(?:/?$|(?:-[^/]+))(?:/?$|(?:/page([0-9]+)?)) forumdisplay.php?f=$1&page=$2&%{QUERY_STRING} [L]
# OdiSEO rewrite
RewriteRule ^[0-9]+(?:/?$|(?:-[^/]+))/([0-9]+)(?:/?$|(?:-[^/]+))(?:/?$|(?:/page([0-9]+)?)) showthread.php?t=$1&page=$2&%{QUERY_STRING} [L]
RewriteRule ^([0-9]+)(?:/?$|(?:-[^/]+))(?:/?$|(?:/page([0-9]+)?)) forumdisplay.php?f=$1&page=$2&%{QUERY_STRING} [L]
# vBulletin rewrite
RewriteRule ^members/([0-9]+) member.php?u=$1&%{QUERY_STRING} [L]
RewriteRule ^blogs/([0-9]+)(?:/?$|(?:-[^/]+))(?:/?$|(?:/page([0-9]+)?)) blog.php?u=$1&page=$2&%{QUERY_STRING} [L]
RewriteRule ^entries/([0-9]+)(?:/?$|(?:-[^/]+))(?:/?$|(?:/page([0-9]+)?)) entry.php?b=$1&page=$2&%{QUERY_STRING} [L]
RewriteRule ^list/([^/]*/)([0-9]+) list.php?r=$1$2&%{QUERY_STRING} [L]
RewriteRule ^content/(.*) ?r=$1&%{QUERY_STRING} [L]
RewriteRule ^widget/config/([0-9]+) widget.php?r=config/$1&%{QUERY_STRING} [L]
-
Domani lo provo, ti ringtazio! comunque a me funziona bene il file htaccess che ti ho fatto vedere ^^Sono un mito:up:
EDIT: il tuo htaccess non mi funziona
-
Allora copiati le cose che servono :)
-
Non riesco a rimuovere il content dopo il dominio dalla home :(
ho solamente www.dominio.it/content non
Che mi consigli, sono veramente una schiappa a compilare il foglio htaccess
Grazie
-
Mi sa che devi giocare un po' con le opzioni in "Nome Sito/URL/Dettagli di Contatto"
-
Citazione:
Originariamente Scritto da
y2ksw
Mi sa che devi giocare un po' con le opzioni in "Nome Sito/URL/Dettagli di Contatto"
Non posso fare altro che cambiare quel /content ma non rimuoverlo!
-
Hai il forum come predefinito per prima pagina o il cms?
-
-
Ho abilitato questa funzione:
Indirizza Pagina Predefinita CMS a index.php |
Imposta questo a 'Si' se il tuo index.php visualizza la pagina predefinita del CMS e vuoi che i riferimenti alla pagina predefinita puntino qui. |
ed ora il /content/ dalla home del cms è sparito :confused::confused:
Chiarimenti ;)?
Grasssie
EDIT: cos' facendo non va via il /content/ quando clicco sul pulsante articoli, ma se digito l'url puro nel browser non mi reindirizza al /content/ mentre se la disattivo anche quando digito il dominio mi reindirizza :(
-
-
-
Non ha molto senso di uppare ... a questo punto abbiamo trattato ogni cosa immaginabile e per risolvere il problema, se c'è ancora, bisogna forse rielaborare e forse anche partire da un'installazione separata senz plugin ecc per capire cosa possa essere.
Se tuo sito si presenta diversamente da questo (al riguardo delle URL) e non hai trovato il modo di risolvere, purché abbiamo condiviso praticamente ogni configurazione e suggerimento, ci deve essere qualcosa che impedisce la trasformazione, e questo non lo possiamo sapere.
-
Sorry non lo faccio più:(
Ho risolto così:
In Opzioni Gestione Contenuti ho abilitato questo opzione
Indirizza Pagina Predefinita CMS a index.php |
Imposta questo a 'Si' se il tuo index.php visualizza la pagina predefinita del CMS e vuoi che i riferimenti alla pagina predefinita puntino qui. |
Si No
|
Facendo così mi trasforma l'url del sito da www.miosito.it/content/ a www.miosito.it/
Poi ho aggiunto questa regola all .htaccess:
RewriteRule ^$ [L,QSA]
e funziona.
E' una cosa corretta questa che ho fatto? :)
-
Sì, funziona, ma non hai eliminato content, che ti era importante, no?
-
Citazione:
Originariamente Scritto da
y2ksw
Sì, funziona, ma non hai eliminato content, che ti era importante, no?
Uffa è vero, se digito il dominio non si vede il content, ma in realtà c'è difatti se clicco su home (articoli) , torna :(
Non so come fare, con le regole di riscrittura non ci capisco nulla e le spiegazioni del sito di apache mi hanno confuso ancor di piu le idee
c'è un modo per farlo sparire?
chiunque sento dice che ha e non content/ :(
-
Possiamo provare a tornare all'inizio e rifare il ragionamento su content?
Quali sono le combinazioni content che hai e cosa vuoi che si raggiunga? La home, per questa operazione, diventa il portale, non il forum. Se invece vuoi che il forum sia la pagina di ingresso, allora content[.php] non può scomparire.
-
Citazione:
Originariamente Scritto da
y2ksw
Possiamo provare a tornare all'inizio e rifare il ragionamento su content?
Quali sono le combinazioni content che hai e cosa vuoi che si raggiunga? La home, per questa operazione, diventa il portale, non il forum. Se invece vuoi che il forum sia la pagina di ingresso, allora content[.php] non può scomparire.
Certo :)
Quello che voglio è rendere la url della home (articoli) pulita senza /content/
Da Gestione Navigazione ho reso il cms la home del sito. quindi ora quando digito il nome del dominio mi punta direttamente sulla home,.
(anche se, quando clicco sul logo del sito mi punta al forum... poi risolverò, anche se non mi interessa tanto.)
per cercare di risolvere il problema ho provato ad abilitare questa funzione
Indirizza Pagina Predefinita CMS a index.php |
Imposta questo a 'Si' se il tuo index.php visualizza la pagina predefinita del CMS e vuoi che i riferimenti alla pagina predefinita puntino qui. |
ed ho aggiunto questa regola che mi hai dato tu
RewriteRule ^$ [L,QSA]
funziona!! c'è un però, il sito è raggiungibile da entrambi gli indirizzi quindi se digito
www.miosito.it
o
www.miosito.it/content
è la stessa cosa, difatti una volta che sto all'interno della home (pulita senza content) o sto sul forum e clicco sulla home(articoli) mi va su www.miosito.it/content
Quindi in poche parole, come faccio ad eliminare del tutto quel content ?
-
ochei :up:
metti questo dopo "RewriteEngine On":
Codice:
# Old links
RedirectMatch ^/content$ /
RedirectMatch ^/content/$ /
E' questo il risultato giusto? Il resto continua a funzionare?
-
Utilizzando RewriteRule ^$ [L,QSA]
e /content viene reindirizzato mente /content/ con lo slash finale no.
mentre quelle altre che mi hai passato nel messaggio sopra, non so come applicarle ^^
-
Intanto mettile e poi prova. Non sono cose che si possono discutere a livello teorico :)
-
Ho installato oggi un nuovo forum e quindi posso dirti "esattamente" come procedere :)
- Opzioni Gestione Contenuti - Indirizza Pagina Predefinita CMS a index.php: Sì
- Opzioni Gestione Contenuti - URL Etichetta Sito:
- Gestione Navigazione - Articoli - URL: {session.sessionurl_q}
- Stili & Template - Gestione Variabili Sostitutive - Default Style [Aggiungi Nuova Variabile Sostitutiva] - Ricerca Testo: ?tabid=8 (e lasciare la sostituzione vuota!)
Così hai eliminato e varie stranezze. Lasci però i redirect nel file .htaccess perché i vecchi link sia adeguano al nuovo sistema. Provato e funziona :o
-
Eccomi!! questi giorni non ci sono stato e non ho potuta provare :)
Ti ringrazio, questa sera testo tutto:up:
Grazie mille:)
-
Ho fatto come mi hai indicato, il problema persiste, ovvero il sito è ancora raggiungibile da miosito.it/content/
mentre miosito.it/content e miosito.it/ continuano ad essere correttamente reindirizzate.
Ora in più, quando clicco su articoli invece di tornare a miosito.it mi va su miosito.it/?tabid=8 ;)
ha pensare che quando ero giovane mi piaceva scrivere e leggere... potevo continuare con quell' hobby ;)
-
Citazione:
Originariamente Scritto da
Fabioo
Ho fatto come mi hai indicato, il problema persiste, ovvero il sito è ancora raggiungibile da miosito.it/content/
mentre miosito.it/content e miosito.it/ continuano ad essere correttamente reindirizzate.
Ora in più, quando clicco su articoli invece di tornare a miosito.it mi va su miosito.it/?tabid=8 ;)
Hai fatto anche questo (?):
Citazione:
Originariamente Scritto da
y2ksw
metti questo dopo "RewriteEngine On":
Codice:
# Old links
RedirectMatch ^/content$ /
RedirectMatch ^/content/$ /
-
ooppss l'avevo dimenticato ^^
Ok funziona solo che quando clicco su articoli mi esce fuori questo ?tabid=37
sono riuscito ad ottenere il reindirizzo di content content/ aggiungendo questo all'htaccess
RewriteRule ^$ [L,QSA]
RedirectMatch ^/content$ /
RedirectMatch ^/content/$ /
senza sostituire la variabile e senza eliminare il dalla destinazione dell URL degli articoli prima di {session.sessionurl_q} così facendo non si visualizza
?tabid=37
Puo andare?
-
Devo provare la tua soluzione per via del tabid :)