Back to top

Autore Topic: 301 verso root: url sporchi da rimuovere  (Letto 4193 volte)

Offline bellatrix

  • Appassionato
  • ***
  • Post: 640
  • Sesso: Maschio
    • Mostra profilo
301 verso root: url sporchi da rimuovere
« il: 18 Lug 2016, 12:50:25 »
Ho messo mano ad un sito che soffriva di un problema sugli url friendly.
In pratica, ora ci ritroviamo le serp piene di indirizzi tipo:

.../index.php?id_lang=1
.../index.php?id_product=18&controller=product&id_lang=1
.../index.php?id_product=9&controller..
ecc.

Come rimuoverli?
L'index.php da htaccess lo rimuovo ma quello che segue, rimane.
Conoscete una regola che con un 301 porti tutto a "/" ?

Da strumenti del webmaster è possibile rimuovere temporaneamente, non più in modo definitivo, quindi, mi rimane da agire solo su lato server.

Offline luketto

  • Abituale
  • ****
  • Post: 1133
  • Sesso: Maschio
    • Mostra profilo
Re:301 verso root: url sporchi da rimuovere
« Risposta #1 il: 19 Lug 2016, 15:53:42 »
Ciao bellatrix, devi usare le query string, una cosa del tipo



RewriteCond %{QUERY_STRING} ^id_lang=([0-9]+)$
RewriteRule ^index.php$ http://www.nomesito.it/? [R=301,L]





RewriteCond %{QUERY_STRING} ^id_product=([0-9]+)&controller=([a-z])&id_lang=([0-9]+)$
RewriteRule ^index.php$ http://www.nomesito.it/? [R=301,L]


e così via
@LocoLuketto

Offline giusebos

  • Fuori controllo
  • *
  • Post: 21748
  • Sesso: Maschio
  • Giuseppe Serbelloni Mazzanti Viendalmare
    • Mostra profilo
Re:301 verso root: url sporchi da rimuovere
« Risposta #2 il: 19 Lug 2016, 17:49:53 »
magari per poterle applicare al suo problema andrebbe spiegato come si leggono.....
su www.icagenda.it guide e tutorial con esempi di chronoforms e chronoconnectivity

Offline luketto

  • Abituale
  • ****
  • Post: 1133
  • Sesso: Maschio
    • Mostra profilo
Re:301 verso root: url sporchi da rimuovere
« Risposta #3 il: 19 Lug 2016, 17:56:59 »
Ciao Giusebos, problemi? potevi scrivere tranquillamente direttamente te la spiegazione, no? ho risposto secco a una precisa domanda, il come leggere le istruzioni credo sia ampiamente esplicitato in rete...


Cmq: tutto ciò che nella URL si trova dopo il punto interrogativo (?) è detto in query string, le regole quindi verificano prima la condizione (RewriteCond, query_string per l'appunto), esplicitano il parametro in query (id_lang e così via, assegando tutti i numeri o tutte le lettere) e poi riscrivono la url (RewriteRule)


Giusebos saprà completare ulteriormente qualora servisse
@LocoLuketto

Offline giusebos

  • Fuori controllo
  • *
  • Post: 21748
  • Sesso: Maschio
  • Giuseppe Serbelloni Mazzanti Viendalmare
    • Mostra profilo
Re:301 verso root: url sporchi da rimuovere
« Risposta #4 il: 19 Lug 2016, 18:09:28 »
perchè ti scaldi nessun problema, io non sono molto bravo in questo ambito e un minimo di descrizione poteva essere interessante.

Vero è che tante informazioni si trovano in rete, quindi si, se mi dovesse succedere di utilizzarle almeno so che si chiamano query string e quindi con questa chiave effettuerò una ricerca mirata. ;)
su www.icagenda.it guide e tutorial con esempi di chronoforms e chronoconnectivity

Offline bellatrix

  • Appassionato
  • ***
  • Post: 640
  • Sesso: Maschio
    • Mostra profilo
Re:301 verso root: url sporchi da rimuovere
« Risposta #5 il: 19 Lug 2016, 19:59:19 »
Ciao bellatrix, devi usare le query string, una cosa del tipo
RewriteCond %{QUERY_STRING} ^id_lang=([0-9]+)$
RewriteRule ^index.php$ http://www.nomesito.it/? [R=301,L]
RewriteCond %{QUERY_STRING} ^id_product=([0-9]+)&controller=([a-z])&id_lang=([0-9]+)$
RewriteRule ^index.php$ http://www.nomesito.it/? [R=301,L]
e così via

MA GRANDE!
Grazie, Luketto! 

Offline bellatrix

  • Appassionato
  • ***
  • Post: 640
  • Sesso: Maschio
    • Mostra profilo
Re:301 verso root: url sporchi da rimuovere
« Risposta #6 il: 19 Lug 2016, 22:31:58 »
Mmm... non funziona.
Ti porto questo esempio.

www.*************.it/index.php?controller=stores

Ho aggiunto queste righe:
Codice: [Seleziona]
RewriteCond %{QUERY_STRING} ^index.php?controller=stores$
RewriteRule ^index.php$ http://www.*****************.it/? [R=301,L]

La stringa rimane identica.
Il RewriteEngine è su On.
« Ultima modifica: 24 Lug 2016, 21:40:06 da alexred »

Offline bellatrix

  • Appassionato
  • ***
  • Post: 640
  • Sesso: Maschio
    • Mostra profilo
Re:301 verso root: url sporchi da rimuovere
« Risposta #7 il: 19 Lug 2016, 23:03:17 »
Un'altra questione interessante, Luketto, sarebbe quella di portare su determinate pagine gli utenti o gli spider dei motori (magari con un 301) provenienti da un determinato dominio.

Ad esempio:
bsmnovi.com l'ho fatto puntare su bsmgrafica.it
Sul primo ho agito sui dns (non ho hosting per piazzarci un httaccess).

Ora, bsmnovi.com ha diverse pagine nella cache di Google, ad esempio:
bsmnovi.com/contatti che vorrei fare puntare a bsmgrafica.it/studio-pubblicitario

Secondo te è possibile farlo dall'httaccess di bsmgrafica.it ?
Qualcosa tipo:

Codice: [Seleziona]
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_REFERER} bsmnovi.com/contatti /studio-pubblicitario
...??
</ifModule>

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:301 verso root: url sporchi da rimuovere
« Risposta #8 il: 20 Lug 2016, 07:50:15 »
Non puoi, a bsmgrafica non arriverà mai un url bsmnovi.

Offline luketto

  • Abituale
  • ****
  • Post: 1133
  • Sesso: Maschio
    • Mostra profilo
Re:301 verso root: url sporchi da rimuovere
« Risposta #9 il: 20 Lug 2016, 09:01:44 »
Ciao bellatrix, prova a levare il $ dalle istruzioni, magari sul tuo web server fa storie, sul mio funziona.
@LocoLuketto

Offline bellatrix

  • Appassionato
  • ***
  • Post: 640
  • Sesso: Maschio
    • Mostra profilo
Re:301 verso root: url sporchi da rimuovere
« Risposta #10 il: 20 Lug 2016, 13:16:15 »
Non puoi, a bsmgrafica non arriverà mai un url bsmnovi.

Eppure, scusa, è possibile bloccare in base al dominio di provenienza

Codice: [Seleziona]
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_REFERER} dminio.com [NC,OR]
RewriteRule .* - [F]
</ifModule>


Ciao bellatrix, prova a levare il $ dalle istruzioni, magari sul tuo web server fa storie, sul mio funziona.

Provato ma nulla.
Dunque, l'url è questo:

Codice: [Seleziona]
*************/index.php?controller=stores
Ho inserito questa stringa:

Codice: [Seleziona]
RewriteCond %{QUERY_STRING} ^index.php?controller=stores
RewriteRule / [R=301,L]

Il browser risolve qui:

Codice: [Seleziona]
http://www.***************.it/?controller=stores
« Ultima modifica: 24 Lug 2016, 21:40:21 da alexred »

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:301 verso root: url sporchi da rimuovere
« Risposta #11 il: 20 Lug 2016, 14:06:49 »
Dunque cerchiamo di capirci, se hai un redirect semplicemente dal dominio A ti porta al dominio B. Se togli il redirect dal dominio A non arriverà mai nulla al dominio B e quindi non puoi intervenire in base al dominio di provenienza. Immagina se fosse davvero possibile per esempio potrei redirezionare le richieste di qualsiasi sito su un mio sito.  :)

Offline luketto

  • Abituale
  • ****
  • Post: 1133
  • Sesso: Maschio
    • Mostra profilo
Re:301 verso root: url sporchi da rimuovere
« Risposta #12 il: 20 Lug 2016, 14:13:27 »
la stringa messa da te è sbagliata:



RewriteCond %{QUERY_STRING} ^index.php?controller=stores
RewriteRule / [R=301,L]


deve diventare

RewriteCond %{QUERY_STRING} ^controller=stores$
RewriteRule ^index.php$ http://www.*************/nomepagina? [R=301,L]

« Ultima modifica: 24 Lug 2016, 21:39:22 da alexred »
@LocoLuketto

Offline bellatrix

  • Appassionato
  • ***
  • Post: 640
  • Sesso: Maschio
    • Mostra profilo
Re:301 verso root: url sporchi da rimuovere
« Risposta #13 il: 20 Lug 2016, 14:16:08 »
Ma certo che no.
Però, puoi manipolare chi arriva e da dove.
La domanda,.quindi, è capire se costoro li puoi mandare su una pagina che vuoi tu.

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Re:301 verso root: url sporchi da rimuovere
« Risposta #14 il: 20 Lug 2016, 14:22:07 »
Puoi da .htaccess redirezionare uno per uno, a gruppi come vuoi, sull'altro dominio. Ma devi sempre agire sul dominio bsmnovi.com e lasciarlo attivo finché serve, puoi fare poco o nulla sull'altro dominio.

Offline bellatrix

  • Appassionato
  • ***
  • Post: 640
  • Sesso: Maschio
    • Mostra profilo
Re:301 verso root: url sporchi da rimuovere
« Risposta #15 il: 20 Lug 2016, 18:17:21 »
la stringa messa da te è sbagliata
Codice: [Seleziona]
Ho provato questa:
RewriteCond %{QUERY_STRING} ^controller=stores$
RewriteRule ^index.php$ http://www.************/contatti/? [R=301,L]

Niente da fare.
Non ti preoccupare, Luketto. Gli url "farlocchi" stanno indietreggiando nelle serp. Tra un po' spariranno.
Ti chiedo solo di rimuovere quel link sopra, includendo nei tag [ code ] il codice.

Okay, Tomtom...
Grazie anche a te. 
« Ultima modifica: 24 Lug 2016, 21:39:39 da alexred »

 



Web Design Bolzano Kreatif