Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [Inne] Problem z przekierowaniem domeny
Forum PHP.pl > Forum > Przedszkole
knefelio
Mam taki, wydawałoby się prosty problem z przekierowaniem domeny. Chcę przekierowac domena1.pl na domena2.pl wraz z jej podstronami i wszystkimi subdomenami. htaccess wygląda obecnie tak:

Kod
RewriteEngine On
RewriteCond %{HTTP_HOST} ^domena1.pl
RewriteCond %{REQUEST_URI} /(.+) [NC]
RewriteRule (.*) [url="http://domena2.pl"]http://domena2.pl[/url] [R=301,L]
RewriteCond %{HTTP_HOST} ^www.domena1.pl
RewriteCond %{REQUEST_URI} /(.+) [NC]
RewriteRule (.*) [url="http://domena2.pl"]http://domena2.pl[/url] [R=301,L]
RewriteCond %{HTTP_HOST} ^(.*)\.domena1\.pl$
RewriteRule (.*) [url="http://domena2.pl"]http://domena2.pl[/url] [R=301,L]


Niestety ale nie działa to dla żadnej subdomeny domeny1.pl, pisałem w tej sprawie nawet do administracji, gdyż sądziłem, ze może być winny wildcard dla domeny, ale twierdzą, że wildcard trzeba wyłączyć a błąd jest w pliku, choć nie wiedzą jaki.

Nikt nie pomoże?

Już sam nie wiem jak to rozwiązać, testowsłem teraz z wildcardem wyłączonym na różne sposoby i tez nie chce to działać
fiszol
A może na poziomie php?
  1. <?php
  2. if($_SERVER['SERVER_NAME'] == 'domena1') {
  3. header('Location: domena2');
  4. }
  5. ?>
knefelio
Warning: Cannot modify header information - headers already sent

coś takiego dostaję

A czy generalnie plikiem htaccess nie ma opcji by to zrobić? Bo ta regułka wydaje mi sie logiczna, ale nie chce działać dla subdomen, nawet na innych hostingu testowałem ją.
fiszol
Dostajesz taką wiadomość bo wysłałeś już jakąś treść do użytkownika, nagłówek z przekierowaniem wysłać przed jakąkolwiek treścią. Ewentualnie możesz zrobić tak:
Kod
<?php
ob_start();
if($_SERVER['SERVER_NAME'] == 'domena1') {
    header('Location: domena2');
}
ob_end_flush();
?>


Co do przekierowania w .htaccess - nie wiem, nigdy tego nie robiłem. Googluj, na pewno coś znajdziesz.
Cross77
Kod
RewriteCond %{HTTP_HOST} ^www.stara-strona.pl [or]
RewriteCond %{HTTP_HOST} ^stara-strona.pl
RewriteRule (.*) http://www.nowa-strona.pl/$1 [R=301,L]


Lub PHP
  1. <?php
  2. header("HTTP/1.1 301 Moved Permanently");
  3. ?>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.