2017-04-23 33 views
5

Szukam tu trochę czasu, aby znaleźć coś podobnego, ale nie mogę znaleźć tego, czego szukam.przekierować wszystko z wyjątkami

Chciałbym przekierować stary projekt odrzucono projekt na nowe, są one tylko częściowo podobny i chciałbym przekierować mecze, a potem wszystko inne, podczas usuwania wszelkich

myślę remembere że Zasady .htaccess są opracowywane jeden po drugim, więc mogę po prostu dodać 301-tych ponad wszystko inne przekierowanie, ale okazuje się, że ten kod

RewriteEngine On 

Redirect 301 /match1.html https://www.domain.tld/match1/ 
Redirect 301 /match2.html https://www.domain.tld/match2/ 
Redirect 301 /match3.php&page=6 https://www.domain.tld/match3/? 

RewriteBase/
RewriteRule .*? https://www.domain.tld/? [R=301,L] 

przekierowuje po prostu wszystko bezpośrednio do https://www.domain.tld/

The Old Project mas całkowicie ręcznie pracuje z ponad 450 statycznymi stronami HTML i kolejnymi plikami ~ 100 php, więc mam nadzieję, że jest prostszy sposób na stworzenie ogromnego .htaccess, aby to zrobić.

+0

Czy możesz podać obecny i docelowy adres URL, pomoże to lepiej zrozumieć Twój problem – ad08

+0

Szczerze mówiąc, prawdopodobnie przekierowałbym użytkownika z jakimś parametrem GET, który wywołałby wyskakujące okienko, że strona się zmieniła to domena, ustawienia itp. –

Odpowiedz

2

Reguła przekierowanie wszystko do https://www.domain.tld/ z powodu swojej ostatniej reguły i przekierowanie skonsolidowanym w jedną całość można użyć wyrażenia regularnego do meczu spróbuj poniżej

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME}\.html -f 
RewriteRule ^(.+)$ https://www.domain.tld/$1/ [R=301,L] 

RewriteCond %{REQUEST_FILENAME}\.php -f 
RewriteRule ^(.+)$ https://www.domain.tld/$1/ [R=301,L] 

Jeśli istnieją inne pewne wzorce podaj je i jestem zakładając, że używasz reguł w katalogu głównym .htaccess lub odpowiednim katalogu.

+0

Tak, używam reguł z katalogu głównego i tylko wtedy, gdy nie jest to możliwe, utworzę foldery, aby je przekierować. - Postaram się wdrożyć Kodeks tak szybko, jak to możliwe, ale od teraz jestem w domu, gdzie mam bardzo ograniczony dostęp do moich stron i kodu. Więc wypróbowanie nie jest możliwe przed poniedziałkiem, jaki będzie najwcześniejszy moment, aby oznaczyć pytanie jako rozwiązane/nagradzane nagrodą. Pozdrowienia – Caylean

+0

Nie spiesz się, nie spiesz się i daj mi znać! i jeszcze jedno, aby przekierować każdy adres URL do nowej strony lub tylko niektóre adresy URL. –

+0

Najpierw niektóre specyficzne dla konkretnych nowych celów, a potem reszta na stronę główną. – Caylean