Discussione:
Redirezione indirizzo no esistente...
(troppo vecchio per rispondere)
SAP
2010-02-13 16:49:09 UTC
Permalink
Scusate la domanda probabilmente trita e ritrita...

Ho un server che alla richiesta

http://www.miodominio.com/?stringa

Mi risponde con la pagina index senza togliere dall'indirizzo la
stringa...

Il comportamento del server dovrebbe essere analogo, ma restituire solo

http://www.miodominio.com/

Per qualsiasi stringa io inserisca nell'indirizzo.

Basta un htaccess?
E che tipo di rewrite mi server?

grazie...
--
Giocare col mondo, facendolo a pezzi...
Bambini che il sole, ha ridotto gia'... vecchi.

Tech/Personal website: posarelli.net/posarelli.org
Alessandro Pellizzari
2010-02-13 17:18:37 UTC
Permalink
Post by SAP
Ho un server che alla richiesta
http://www.miodominio.com/?stringa
Mi risponde con la pagina index senza togliere dall'indirizzo la
stringa...
Il comportamento del server dovrebbe essere analogo, ma restituire solo
http://www.miodominio.com/
Basta un htaccess?
No. L'Url viene scritto sul browser, dove tu non hai nessun controllo.

L'unica cosa che puoi fare lato server e' controllare se ci sono
parametri nell'url dell'index.php e fare un redirect alla stessa pagina
senza quei parametri.

Bye.
Andrea D'Amore
2010-02-13 19:55:27 UTC
Permalink
Post by SAP
Il comportamento del server dovrebbe essere analogo, ma restituire solo
http://www.miodominio.com/
Per qualsiasi stringa io inserisca nell'indirizzo.
Basta un htaccess?
Sì, puoi incollare le righe "RewriteRule" attuali?
Post by SAP
E che tipo di rewrite mi server?
Bellissima.
SAP
2010-02-13 20:53:27 UTC
Permalink
Post by Andrea D'Amore
Sì, puoi incollare le righe "RewriteRule" attuali?
Pochissima roba:

RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.mydomain.com
RewriteRule (.*) http://www.mydomain.com%{REQUEST_URI} [R=301,L]
Post by Andrea D'Amore
Post by SAP
E che tipo di rewrite mi server?
Bellissima.
Ehhhh :)
Scappata...
--
Giocare col mondo, facendolo a pezzi...
Bambini che il sole, ha ridotto gia'... vecchi.

Tech/Personal website: posarelli.net/posarelli.org
Andrea D'Amore
2010-02-13 22:00:09 UTC
Permalink
Post by SAP
RewriteCond %{HTTP_HOST} !^www.mydomain.com
RewriteRule (.*) http://www.mydomain.com%{REQUEST_URI} [R=301,L]
Togli %{REQUEST_URI} e direi che ottieni quello che hai chiesto, cioè
solo "http://www.mydomain.com" sempre e comunque.
SAP
2010-02-13 22:39:02 UTC
Permalink
Post by Andrea D'Amore
Togli %{REQUEST_URI} e direi che ottieni quello che hai chiesto, cioè
solo "http://www.mydomain.com" sempre e comunque.
Sembra non funzionare...

Piu' che altro non ha effetto: se scrivo
http://www.mydomain.com/?porcaloca mi rimane nell'indirizzo tutto
quanto, il che e' molto poco SEO friendly...
--
Giocare col mondo, facendolo a pezzi...
Bambini che il sole, ha ridotto gia'... vecchi.

Tech/Personal website: posarelli.net/posarelli.org
Andrea D'Amore
2010-02-14 10:44:30 UTC
Permalink
Post by SAP
Piu' che altro non ha effetto: se scrivo
http://www.mydomain.com/?porcaloca mi rimane nell'indirizzo tutto
quanto, il che e' molto poco SEO friendly...
Prova a levare il not '!' dalla RewriteRule, occhio ai rewrite ricorsivi.
SAP
2010-02-14 10:53:08 UTC
Permalink
Post by Andrea D'Amore
Prova a levare il not '!' dalla RewriteRule, occhio ai rewrite ricorsivi.
Infatti, ca va sans dire:

"Redirect Loop. Redirection limit for this URL exceeded"
--
Giocare col mondo, facendolo a pezzi...
Bambini che il sole, ha ridotto gia'... vecchi.

Tech/Personal website: posarelli.net/posarelli.org
Alessandro Pellizzari
2010-02-14 18:17:24 UTC
Permalink
Post by SAP
Post by Andrea D'Amore
Prova a levare il not '!' dalla RewriteRule, occhio ai rewrite ricorsivi.
"Redirect Loop. Redirection limit for this URL exceeded"
Non mi credete, vero? :P

Rilancio: non lo puoi fare lato server. Forse ci riesci con un javascript.

Ma mettiti il cuore in pace: quello che stai cercando di fare non avra`
nessun effetto sui motori di ricerca. Se ti linkano cosi`, i motori di
ricerca ti vedono cosi`.

Bye.
SAP
2010-02-14 19:08:52 UTC
Permalink
Post by Alessandro Pellizzari
Non mi credete, vero? :P
Era solo un'esila speranza :)
Post by Alessandro Pellizzari
Rilancio: non lo puoi fare lato server. Forse ci riesci con un javascript.
Ma mettiti il cuore in pace: quello che stai cercando di fare non avra`
nessun effetto sui motori di ricerca. Se ti linkano cosi`, i motori di
ricerca ti vedono cosi`.
Forse agendo sul parser PHP?
--
Giocare col mondo, facendolo a pezzi...
Bambini che il sole, ha ridotto gia'... vecchi.

Tech/Personal website: posarelli.net/posarelli.org
Andrea D'Amore
2010-02-14 22:13:22 UTC
Permalink
Post by Alessandro Pellizzari
Non mi credete, vero? :P
Mi sembrava avessi frainteso la risposta iniziale.
Post by Alessandro Pellizzari
Rilancio: non lo puoi fare lato server.
Secondo me si può, magari gli servono due o più regole, quell'unica
RewriteCond %{HTTP_HOST} !^www.mydomain.com

non mi sembra sufficiente, ci vuole invece
RewriteCond %{HTTP_HOST} ^www.mydomain.com

e secondo me un'altra regola con %{REQUEST_URI} che controlli e tagli
via i parametri. In questo modo la regola viene applicata solo se ci
sono parametri e solo una volta evitando il problema dei rewrite
infiniti.
All'OP il divertimento.
Alessandro Pellizzari
2010-02-15 05:38:21 UTC
Permalink
Post by Andrea D'Amore
Post by Alessandro Pellizzari
Non mi credete, vero? :P
Mi sembrava avessi frainteso la risposta iniziale.
Magari sara` anche vero, quindi chiediamo all'op di chiarire.

Da quel che ho capito io, lui vuole cambiare l'URL scritta nel browser
DOPO che l'utente ha premuto invio (sul browser). Oppure cambiarla
(sempre sul browser) DOPO che l'utente ha seguito un link "sbagliato".

Tutte le tecniche di rewrite modificano l'URL sul server web prima di
mandarle, per esempio, al PHP ma non possono in nessun modo toccare il
browser.

Bye.
SAP
2010-02-15 07:59:08 UTC
Permalink
Post by Alessandro Pellizzari
Magari sara` anche vero, quindi chiediamo all'op di chiarire.
Eccomi.
Post by Alessandro Pellizzari
Da quel che ho capito io, lui vuole cambiare l'URL scritta nel browser
DOPO che l'utente ha premuto invio (sul browser). Oppure cambiarla
(sempre sul browser) DOPO che l'utente ha seguito un link "sbagliato".
Diciamo che penso non sia un problema di htaccess perche' qui e' il
motore php che deve bloccare le query non permesse o non esistenti,
visto che vengono prima vagliate dal php.
Post by Alessandro Pellizzari
Tutte le tecniche di rewrite modificano l'URL sul server web prima di
mandarle, per esempio, al PHP ma non possono in nessun modo toccare il
browser.
Infatti...

Il problema e' che se scrivo http://mydomain.com/?quelchecavolomipare,
mi viene restituita una pagina esistente (sempre la home) e questo non
va bene...
--
Giocare col mondo, facendolo a pezzi...
Bambini che il sole, ha ridotto gia'... vecchi.

Tech/Personal website: posarelli.net/posarelli.org
Hermooz
2010-02-15 09:32:12 UTC
Permalink
Il problema e' che se scrivohttp://mydomain.com/?quelchecavolomipare,
mi viene restituita una pagina esistente (sempre la home) e questo non
va bene...
bè, allora sarà dura, visto che è così che deve funzionare da
protocollo HTTP!

bye!
Andrea D'Amore
2010-02-15 10:42:06 UTC
Permalink
Post by SAP
Il problema e' che se scrivo http://mydomain.com/?quelchecavolomipare,
mi viene restituita una pagina esistente (sempre la home) e questo non
va bene...
Che comportamento vuoi invece?
SAP
2010-02-15 10:45:16 UTC
Permalink
Post by Andrea D'Amore
Che comportamento vuoi invece?
Penso che basti un semplice scritp in php o javascript a questo punto,
basta che tutte le query arbitrarie e non esistenti mi rimandino a un
link http://www.mydomain.com/
--
Giocare col mondo, facendolo a pezzi...
Bambini che il sole, ha ridotto gia'... vecchi.

Tech/Personal website: posarelli.net/posarelli.org
Hermooz
2010-02-15 09:30:51 UTC
Permalink
Post by Alessandro Pellizzari
Non mi credete, vero? :P
Rilancio: non lo puoi fare lato server. Forse ci riesci con un javascript.
Mi sfugge il motivo della tua affermazione, se il server fa un
redirect a quello il browser deve puntare, che altro ci dovrebbe
essere da fare lato client?

bye!
Alessandro Pellizzari
2010-02-15 09:49:35 UTC
Permalink
Post by Alessandro Pellizzari
Non mi credete, vero? :P
Rilancio: non lo puoi fare lato server. Forse ci riesci con un javascript.
Mi sfugge il motivo della tua affermazione, se il server fa un redirect
a quello il browser deve puntare, che altro ci dovrebbe essere da fare
lato client?
Appunto quello che dicevo nel primo messaggio. Puoi fare un redirect (e
quindi ricaricare la stessa pagina senza parametri), ma non puoi cambiare
l'URL scritto nel browser, dal server.

Bye.
Hermooz
2010-02-15 10:16:18 UTC
Permalink
Post by Alessandro Pellizzari
Appunto quello che dicevo nel primo messaggio. Puoi fare un redirect (e
quindi ricaricare la stessa pagina senza parametri), ma non puoi cambiare
l'URL scritto nel browser, dal server.
Yep, poi l'OP si è spiegato meglio ed in effetti quello che vuole
ottenere lui è diverso da un semplice redirect. Non avevo capito bene
di cosa si stava parlando.

bye!
Loading...