Skocz do zawartości

mod_rewrite


Rekomendowane odpowiedzi

Witam.

Mam kilka domen podpiętych do jednej strony, ostatnio została dodana wersja językowa i teraz mam problem.

Mam przykładową domenę www.mojastrona.pl oraz www.meinseite.de - obie domeny odnoszą się do tego samego katalogu na serwerze, z tym, że index.php dla wersji niemieckiej znajduje się w katalogu de/

Chciałbym robić, aby wybierając adres mojastrona.pl można było oglądać wersję po naszemu a meinseite.de - po ichniemu.

W tym momencie mam to rozwiązane w ten sposób:

Options +FollowSymlinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^meinseite\.de$ [NC]
RewriteRule ^(.*)$ https://www.meinseite.de/$1 [R=301,L]

RewriteEngine On
RewriteCond   %{HTTP_HOST}			  ^www\.meinseite\.de$ [NC]
RewriteRule   ^(.*)$					https://www.mojastrona.pl/de/index.php [R=301,L]

Działa to tak, że faktycznie po wpisaniu www.meinseite.de lub meinseite.de widzę stronę po niemiecku, ale w pasku adresu jest: www.mojastrona.pl/de/index.php.

I teraz moje pytanie brzmi, jak zrobić, żeby zamiast "mojastrona.pl/cośtam" było tam "meinseite.de/etwas" ?

Próbowałem tego (znalezione tu na forum):

RewriteCond	%{HTTP_HOST}	meinseite.de
RewriteCond	%{REQUEST_URI}  !de/
RewriteRule	(.*)			de/$1 [L]

Ale nie działa, wygląda to tak, jakby zmieniał katalog glówny na de/ a pliki obrazków są w ../images/ i nie wyświetla grafik.

W zasadzie to nie trzeba więcej tylko zmusić go, żeby nie zmieniał DocumentRoot na de/ tylko zostawał przy głównym.

Proszę o pomoc. :)

Odnośnik do komentarza
Udostępnij na innych stronach

Coś w tym klimacie:

# Przekierowanie  301 dla meinseite.de
RewriteCond %{HTTP_HOST} ^meinseite.de
RewriteRule ^(.*)$ https://www.meindeseite.de/$1 [R=301, L]

# Przekierowanie  301 dla mojastrona.pl
RewriteCond %{HTTP_HOST} ^mojastrona.pl
RewriteRule ^(.*)$ https://www.mojastrona.pl/$1 [R=301, L]

# Reguła dla .de
RewriteCond %{HTTP_HOST} ^www.meinseite.de
RewriteRule ^(.*)$ de/$1 [L]

Na emeryturze po SEO zajmuję się R&D.

Odnośnik do komentarza
Udostępnij na innych stronach

Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator, root@localhost and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.


--------------------------------------------------------------------------------

Apache/2.2.0 (Fedora) Server at www.meinseite.de Port 80

Chyba kicha. Zgodnie z tym co pisze sprawdziłem errorlog ale nic tam nie ma o tym.

Odnośnik do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę. Warunki użytkowania Polityka prywatności