Przekierowanie adresu - .htaccess?


(Sitemaster) #1

no i mam taki kłopot że mam serwer załóżmy: http://www.mojastrona.pl

a wszystkie pliki strony z plikiem index faktycznie w podkatalogu: http://www.mojastrona.pl/podkatalog

i niestety tak musi być!

jak teraz sprawić, by można było wejść na tą strone wpisując adres http://www.mojastrona.pl a nie http://www.mojastrona.pl/podkatalog ?

kombinowałem tak

ale mi to nie działa.

Jak coś takiego zrobić?


(pawciak) #2

a RewriteEngine On ?


(Sitemaster) #3

jest

dokłądniej mam

w katalogu głównym mam w tej chwili pusty plik index.htm

ale chcę by strona ukryta w podkatalogu była stroną główną, by była widoczna z pod adresu http://www.mojastrona.pl, bez użycia nazwy podkatalogu.

tak samo by wszystkie linki postaci http://www.mojastrona.pl/podkatalog/index.php?id=11 można było podawać jako http://www.mojastrona.pl/index.php?id=11

jak powinien wyglądać do tego wpis w .htaccess?


(pawciak) #4

jutro rano napisze bo teraz juz nie jestem w stnie myslec :wink: ale tak na marginesie to imo łatwiej i mniej problematycznie będzie po prostu w ustawieniach domeny zmienić z katalogu base na /Twojkatalog/ ;]


(floyd) #5

Można to zrobić na wiele sposobów np. w pliku index.htm

dodać wpis w html lub w php gdy plik ma nazwę index.php:

Lub jeżeli plik index będzie miał rozszerzenie .php to:

<?

Header("Location:podkatalog/strona.htm");

?>

(Sitemaster) #6

Oczywiście że można ale to nie rozwiązuje problemu widoczności podkatalogu.

Zaznaczam, wstukując adres http://www.mojastrona.pl powinno załadować faktycznie pliki z podkatalogu, tak samo wstukując http://www.mojastrona.pl/index.php?id=11 nie powinno sie to odwoływać do pliku index.php w katalogu głównym a do pliku index.php w podkatalogu!

Bo teraz by otworzyć stronke musze napisać http://www.mojastrona.pl/podkatalog, albo w pliku index w głównym katalogu dodać przekierowanie na index w podkatalogu ale to spowoduje że w pasku adresu będzie ten podkatalog widoczny - a ma go nie być.


(Panda2a) #7

zapomniałeś o :

rewritecond %{http_host} ^www.mojastrona [nc]

rewriterule ^(.*)$ http://www.mojastrona/podkatalog/$1[r=301,nc]

(Sitemaster) #8

nadal nie działa, pokazuje błąd wewnętrzny 500

chyba sobie odpuszcze i dam zwykły index z redirectem :frowning:

No ale bym miał jeszcze inne pytanie

mam regułe

z tym, że kumpel chce by było z polskimi literami, czyli zamiast roze/ róże/

dałem więc

i nie bardzo działa ja zapodaje linka r%c3%b3%c5%bce/23 albo róże/23

DOdam że wyskakuje 404

dodałem nawet

i dalej nic Co jest nie tak?


(Panda2a) #9

Zapomnij o polskich znakach w adresach stron.

Duża robota "0" korzyści.


(Sitemaster) #10

powiedz to mojemu znajomemu :x

zero nie zero, co robię źle?

krzaczki przekazywane w zmiennej działąją dobrze bo sprawdzałem w innym przykładzie, ale jak zrobić by te wpisane na stałe w pliku .htaccess działały? albo te zczytane z adresu były poprawnie kodowane?

no nie wiem, co zrobić by to działało?