.htaccess redirecționează folderul către o adresă URL (Programare, .Htaccess, Redirecționare)

CunruiLi a intrebat.
a intrebat.

Încerc să redirecționez un folder și toate subfișierele sale către un URL cu un fișier .htaccess.

Dar

Redirect 301 /abc/cba/ http://www.aaa.com/

Va face /abc/cba/ddd/index.html redirecționarea către http://www.aaa.com/ddd/index.html

Ceea ce vreau este redirecționarea /abc/cba/ /abc/cba/ddd/index.html către http://www.aaa.com/

Ar putea ajuta cineva? Mulțumesc. Dacă ceva nu este clar, vă rog să mă anunțați.

Comentarii

  • Am serverul meu de găzduire partajată pe godaddy.com și domeniul principal este abc.com Acum am un alt domeniu înregistrat xyz.com pe un alt serviciu 3rd nu pe godaddy. Pentru acest nou site web xyz.com am instalat wordpress în directorul xyz al serverului meu de găzduire godaddy. Cum pot acum să direcționez acest domeniu xyz.com către directorul xyz al serverului meu de găzduire, păstrând site-ul abc.com așa cum este? –  > Por Ruchir Shah.
4 răspunsuri
Jon Lin

În mod implicit, Redirect sortează hărți nodul de cale la un nou nod de cale, astfel încât tot ceea ce urmează după prima cale este adăugat la URL-ul țintă.

Încercați:

RedirectMatch 301 ^/abc/cba/ http://www.aaa.com/?

Sau dacă preferați să utilizați mod_rewrite în loc de mod_alias:

RewriteEngine On
RewriteRule ^/?abc/cba/ http://www.aaa.com/? [R=301,L]

Comentarii

  • Doar un indiciu: Ar trebui să fiți foarte sigur dacă doriți să utilizați 301. Pentru că poate fi o adevărată permanent redirecționare ( stackoverflow.com/questions/9130422/… ). Dacă nu sunteți sigur și doriți să evitați problemele în viitor, utilizați 302. Oricum avantajos în faza de implementare și testare. –  > Por Martin Schneider.
KnightHawk

iată un alt exemplu de regulă mod_rewrite care a funcționat pentru mine

Am vrut să redirecționez un subdirectorat către rădăcina aceluiași domeniu.

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^sub_directory/(.*)$ /$1 [R=301,NC,L]
</IfModule>

mai multe exemple pot fi găsite aici:http://coolestguidesontheplanet.com/redirecting-a-web-folder-directory-to-another-in-htaccess/

Kevin Danikowski

A trebuit să redirecționez urile de la versiunea veche a site-ului la versiunea nouă, așa că iată ce am făcut pentru a redirecționa orice link de la about-us/* la about-us.html

RewriteEngine on
RewriteRule ^about-us/(.*)$ about-us.html [R=301,L]

Ceea ce nu face este să rescrie ceva de genul domain.com/about-us/thing.html => domain.com/about-us.html .

Funcționează pentru lucruri fără extensii domain.com/about-us/something-in-url => domain.com/about-us.html

Am adăugat liniile de mai jos pentru a redirecționa .jpg și .png, dar nu a funcționat pentru .html, nu pot afla de ce.

RewriteRule ^about-us/(.*).jpg about-us.html [R=301,L]
RewriteRule ^about-us/(.*).png about-us.html [R=301,L]

Kyle Coots

Eu prefer următoarea metodă:

 RewriteEngine on
 RewriteCond %{REQUEST_URI}  ^/somedir           [NC]
 RewriteRule /(.*) http://somesite.com/lost/$1 [R=301,L]

Comentarii

  • A funcționat ca un farmec! Mulțumesc foarte mult. –  > Por Dirk De Winnaar.