- Home
- Categorie
- La Community Connect.gt
- Tutto sulla Community
- RewriteRule...qualcuno mi togle delle curiosità?!
-
RewriteRule...qualcuno mi togle delle curiosità?!
Salve a tutti,
chiedo a persone più esperte di me lumi sul RewriteRule...1- Posso usare il RewriteRule anche se ormai sul sito ho riferimenti fatti in un certo modo?mi riferisco a css & c. perchè facendo un RewriteRule su una pagina con questo url nightchannel.it/index.php?sel=music (ottenendo nightchannel.it/homepage/music) non vedo le immagini e gli stili del CSS..come mai?dovrei rifare tutti i riferimenti?
2- Se vado su nightchannel.it/index.php?sel=music , una volta impostato il RewriteRule, non si può fare in modo che l?url diventi quello riscritto?<SEMI_OT>
Nel mio .htaccess ho messo un redirect alla pagina index.php nel caso in cui si verifichi un errore 403 o 404 però la url rimane quella digitata male (nel caso di un 404)..non si può cambiare mettendo index.php?Dove sbaglio?!
</SEMI_OT>Sperando in vostre risposte e sperando di non aver 'trasgredito' qualche regola vi ringrazio anticipatamente
-
@m3t4lup said:
Salve a tutti,
chiedo a persone più esperte di me lumi sul RewriteRule...Ciao m3t4lup
@m3t4lup said:
1- Posso usare il RewriteRule anche se ormai sul sito ho riferimenti fatti in un certo modo?mi riferisco a css & c. perchè facendo un RewriteRule su una pagina con questo url nightchannel.it/index.php?sel=music (ottenendo nightchannel.it/homepage/music) non vedo le immagini e gli stili del CSS..come mai?dovrei rifare tutti i riferimenti?
Utilizza per css, js, immagini i riferimenti partendo dalla document root.
Esempio: /css/nome.css, /img/esempio/nome.jpg
@m3t4lup said:2- Se vado su nightchannel.it/index.php?sel=music , una volta impostato il RewriteRule, non si può fare in modo che l?url diventi quello riscritto?
Certo, con un redirect 301.
@m3t4lup said:<SEMI_OT>
Nel mio .htaccess ho messo un redirect alla pagina index.php nel caso in cui si verifichi un errore 403 o 404 però la url rimane quella digitata male (nel caso di un 404)..non si può cambiare mettendo index.php?Dove sbaglio?!
</SEMI_OT>Hai utilizzato un redirect 301? Perché reindirizzi alla home tutte le pagine inesistenti?
-
@ayrton2001 said:
Utilizza per css, js, immagini i riferimenti partendo dalla document root.
Esempio: /css/nome.css, /img/esempio/nome.jpguhm...ok ma usare css/nome.css e /css/nome.css non cambia un pò tutto?cioè a me basta fare partire tutti i riferimenti dalla document root per fare andare tutto o rischio di avere dei problemi?perchè mi ricordo che durante lo sviluppo sono incappato in questo problmea,cioè images/ e /images/ venivano trattati diversamente...alcune volte funzionava altre no
@ayrton2001 said:
Certo, con un redirect 301.
ma dici alla fine di ogni regola mettere [L,R=301]? o devo fare qualcos'altro? perchè attualmente ho questo:
#modulo per la riscrittura degli url RewriteEngine on RewriteRule ^/homepage/(.*).html /index.php?sel=$1 [L,R=301]
ma non va
@ayrton2001 said:
Hai utilizzato un redirect 301? Perché reindirizzi alla home tutte le pagine inesistenti?
no..ho usato
ErrorDocument 404 /index.php
ErrorDocument 403 /index.php
per reindirizzare...ho visto che ci sono dei siti che ti rimandano alla home se inserisci un url inesistente..non so se è una buona pratica...volendo potrei creare una pagina di errore e reindirizzare su queste....ma non mi conviene usare l'ErrorDocument?
-
@m3t4lup said:
uhm...ok ma usare css/nome.css e /css/nome.css non cambia un pò tutto?
Se la pagina che richiama il css si trova nella document root non cambia, se invece si trova nella cartella /esempio/ allora il css deve essere richiamato con /esempio/css/file.css
@m3t4lup said:
ma dici alla fine di ogni regola mettere [L,R=301]? o devo fare qualcos'altro? perchè attualmente ho questo:
Si
@m3t4lup said:
#modulo per la riscrittura degli url RewriteEngine on RewriteRule ^/homepage/(.*).html /index.php?sel=$1 [L,R=301]
ma non va
Dovresti scrivere un esempio dell'URL che richiami.
@m3t4lup said:
no..ho usato
ErrorDocument 404 /index.php
ErrorDocument 403 /index.php
per reindirizzare...ho visto che ci sono dei siti che ti rimandano alla home se inserisci un url inesistente..non so se è una buona pratica...volendo potrei creare una pagina di errore e reindirizzare su queste....ma non mi conviene usare l'ErrorDocument?
Sarebbe opportuno, a mio parere, avere una pagina custom che sia inerente alla pagina non più esistente. Dipende comunque da caso a caso.
-
allora Ayrton..intanto grazie per le tue risposte.
Ok per il discorso files che si trovano nella document root...ho aggiunto questo nell'htaccess:RewriteEngine on RewriteBase / RewriteRule ^(.+)\.html$ index.php?sel=$1 [L,R=301]
in questo modo se scrivo nightchannel.it/music.html in automatico vengo rimandato a nightchannel.it/index.php?sel=music e quindi va bene però appena faccio invio l'url nel browser diventa quella con i parametri...il che non so se ha senso...Ma una volta fatto ciò dovrei rifare tutti i riferimenti nel sito in modo da farli puntare all'url riscritto?è questo che non capisco.
Per quanto riguarda gli errordocument indipendentemente dalla pagina a cui devono puntare rimane il fatto che se si mette un url sbagliato ottenendo un 404 vengo si rimandato alla index ma l'url nel browser rimane quello sbagliato...non capisco perchè...
-
Se l'URL finale che vuoi ottenere è del tipo: nightchannel .it/music.html allora devo togliere R=301 dal la regola dell'.htaccess.
Inoltre tutti gli URL presenti nelle pagine HTML devono essere .html.