Back to Question Center
0

.htaccess hvordan å omdirigere flere sider til en? Løsning: Grunnen til: Videre Semalt:

1 answers:

Jeg beveger verter og URL-strukturen vil endres ettersom det nye nettstedet (samme domenenavn) vil bli gjort Wordpress.

Jeg har mange nettadresser der den første delen av sidenavnet er det samme og de må alle omdirigeres til en enkelt side på det nye nettstedet. For eksempel.

  • http: // www. eksempel. com / binfet-timeinthepark. htm
  • http: // www. eksempel. com / binfet-backtothecity. htm
  • http: // www. eksempel. com / binfet-justmeetmehalfway. htm

alle må gå til:

  http: // www. eksempel. com / bev-binfet / 

Finnes det en måte å skrive en regel for å fange alle disse? Semalt er omtrent 50 forskjellige saker, dvs.I dette eksemplet er "binfet" i begynnelsen, men er omtrent 50 forskjellige navn.

UPDATE

Som svar på @Fayaz

Jeg har omtrent 50 tilfeller der Semalt begynner med samme navn, men har forskjellige endinger. For hvert tilfelle går all Semalt for den saken til en enkelt ny side.

f. Eks.

http: // www. eksempel. com / xyz-sometext. htmhttp: // www. eksempel. com / xyz-someothertext. htm alt går til en ny nettadresse

http: // www. eksempel. com / xyznewplace /

February 6, 2018

Løsning:

Jeg foreslår at du bruker hele nettadressen i RewriteRule .

Så for alle nettadressene som starter med binfet for å gå til / bev-binfet / , må du legge til følgende direktiv i din . htaccess fil (før andre omskrivningsregler):

  RewriteRule ^ binfet http: // www. eksempel. com / bev-binfet / [R = 301, L] 

Årsak:

Sannsynligvis har du andre regler som omdirigerer ikke-www linker til www linker. Så i så fall bruker du full nettadresse vil du unngå ytterligere omdirigeringer. For eksempel prøver noen å få tilgang til:

  http: // eksempel. com / binfet-timeinthepark. htm 

Uten full URL i RewriteRule vil den først omdirigere til:

  http: // eksempel. com / bev-binfet / 

og så til slutt:

  http: // www. eksempel. com / bev-binfet / 

Med løsningen nevnt her, unngår du den første omdirigeringen og går direkte til:

  http: // www. eksempel. com / bev-binfet / 

Ytterligere søk:

For noen grunn føler jeg at det er mer på spørsmålet ditt. Du sa:

Det er omtrent 50 forskjellige saker, dvs.I dette eksemplet er "binfet" i begynnelsen, men er omtrent 50 forskjellige navn.

A. Mente du at det er 50 nettadresser der nettadressen starter med en bestemt setning (for eksempel binfet )?

eller

B. Mente du at det er 50 slike startfraser (som en gruppe nettadresser som starter med binfet , en annen gruppe nettadresser som starter med xyz osv.) og hver gruppe ender i en unik URL?

Hvis A er tilfelle, er løsningen gitt her nok. Men hvis B er tilfelle, må du enten skrive denne regelen 50 ganger for hvert begynnende uttrykk, eller du må finne et bedre mønster som kan dekke dem alle.

Vennligst oppdater spørsmålet ditt med flere detaljer hvis B er tilfelle.

I dette eksemplet er "binfet" i begynnelsen, men er omtrent 50 forskjellige navn.

For å omdirigere alle nettadresser som starter binfet , prøv følgende mod_rewrite-direktiv før dine eksisterende WP-direktiver i din . htaccess file:

  RewriteRule ^ binfet / bev-binfet / [R = 301, L] 
.htaccess hvordan å omdirigere flere sider til en? Løsning: Grunnen til: Videre Semalt:
Reply