Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Przekierowanie htaccess, jak przekierować pliki na inny katalog
zaajcu
post
Post #1





Grupa: Zarejestrowani
Postów: 206
Pomógł: 3
Dołączył: 18.08.2011
Skąd: Chrzanów

Ostrzeżenie: (0%)
-----


Cześć.
Mam problem z przekierowaniem w htaccess.

Potrzebuje przekierować pliki jpg, png, gif na inny katalog. Chodzi o to żeby zawsze adres odnoszący się do tych plików był przekierowywany na www.mojastrona.pl/img
nieważne jaki jest wpisany np. www.mojastrona.p/admin/grafika/logo.jpg powinno być przekierowane na www.mojastrona.pl/img/logo.jpg

Nie orientuje się w tym temacie próbowałem coś tam podziałać ale niestety się nie udało:/

zrobiłem coś takiego:

  1. RewriteEngine On
  2. rewriterule ^(.*).jpg$ localhost/img/$0


ale powodowało mi to pętle i dostawałem adres http://localhost/img/img/img/img/img/img/....

Ten post edytował zaajcu 27.12.2011, 12:12:09
Go to the top of the page
+Quote Post
Sephirus
post
Post #2





Grupa: Zarejestrowani
Postów: 1 527
Pomógł: 438
Dołączył: 28.06.2011
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


dodaj [L]

Kod
    RewriteEngine On
    rewriterule ^(.*).jpg$ localhost/img/$0 [L]
Go to the top of the page
+Quote Post
zaajcu
post
Post #3





Grupa: Zarejestrowani
Postów: 206
Pomógł: 3
Dołączył: 18.08.2011
Skąd: Chrzanów

Ostrzeżenie: (0%)
-----


niestety ale to nie pomogło dalej dostaje adrest localhost/img/img/img/img.....
Go to the top of the page
+Quote Post
erix
post
Post #4





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Daj RewriteCond, który sprawdza REQUEST_URI, czy masz w URL już nową ścieżkę.
Go to the top of the page
+Quote Post
zaajcu
post
Post #5





Grupa: Zarejestrowani
Postów: 206
Pomógł: 3
Dołączył: 18.08.2011
Skąd: Chrzanów

Ostrzeżenie: (0%)
-----


Cytat(erix @ 27.12.2011, 13:16:33 ) *
Daj RewriteCond, który sprawdza REQUEST_URI, czy masz w URL już nową ścieżkę.


a mógłbyś napisać to co trzeba bo w htaccess dopiero zaczynam zabawe
Go to the top of the page
+Quote Post
erix
post
Post #6





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




To nie jest dział na gotowce. Dostałeś wskazówki, teraz Twoim zadaniem jest wyguglać i pogłówkować.
Go to the top of the page
+Quote Post
grochu78
post
Post #7





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 27.12.2011
Skąd: WLKP

Ostrzeżenie: (0%)
-----


samego rewriterule nie stosuje się do przekierowań, spróbuj z : RedirectMatch 301 (.*)\.jpg http://nowy.adres.pl/img/$1
Go to the top of the page
+Quote Post
erix
post
Post #8





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




A kto tak powiedział?

Jeśli nie masz możliwości wydzielenia public_html w konfiguracji vhosta, to robi się to właśnie przez rewrite.
Go to the top of the page
+Quote Post
grochu78
post
Post #9





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 27.12.2011
Skąd: WLKP

Ostrzeżenie: (0%)
-----


Od przekierowywania są specjalne reguły rozpoznawane przez serwer Apache typu Redirect, RedirectMatch czy ProxyPass. oczywiście jeśli nie ma już wyjścia to się go stosuje ale wyrażenie to jest mało wydajne i wydłuża dziłanie serwera
Go to the top of the page
+Quote Post
erix
post
Post #10





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Daj coś przykładowego, chętnie się dowiem, jak zrobić to w tym mule. (IMG:style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
grochu78
post
Post #11





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 27.12.2011
Skąd: WLKP

Ostrzeżenie: (0%)
-----


Cytat(erix @ 27.12.2011, 14:06:13 ) *
To nie jest dział na gotowce. Dostałeś wskazówki, teraz Twoim zadaniem jest wyguglać i pogłówkować.
to chyba twoje słowa ...
Go to the top of the page
+Quote Post
erix
post
Post #12





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Owszem, ale przeszukałem ongiś Google, gdy przygotowywałem artykuł odnośnie Rewritingu i nie przypominam sobie, aby ukryte przekierowania można było realizować przez mod_redir, więc skoro wysnuwa tezę, niech ją potwierdzi.
Go to the top of the page
+Quote Post
zaajcu
post
Post #13





Grupa: Zarejestrowani
Postów: 206
Pomógł: 3
Dołączył: 18.08.2011
Skąd: Chrzanów

Ostrzeżenie: (0%)
-----


Cytat(grochu78 @ 27.12.2011, 15:49:34 ) *
samego rewriterule nie stosuje się do przekierowań, spróbuj z : RedirectMatch 301 (.*)\.jpg http://nowy.adres.pl/img/$1


to niestety ale też nie pomogło

zwróciło mi adres

http://localhost/img//img//img//img//img//...//img//test.jpg

:/

Zrobiłem coś takiego:

RedirectMatch 301 (^venture/img/)[a-zA-Z0-9_-]{1,}.jpg$ http://localhost/venture/img/$0

tylko niestety to nie działa nie wiem jak zanegować pierwszy nawias :/

Ten post edytował zaajcu 2.01.2012, 10:32:38
Go to the top of the page
+Quote Post
erix
post
Post #14





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




http://forum.php.pl/index.php?showtopic=19...st&p=925670
Go to the top of the page
+Quote Post
zaajcu
post
Post #15





Grupa: Zarejestrowani
Postów: 206
Pomógł: 3
Dołączył: 18.08.2011
Skąd: Chrzanów

Ostrzeżenie: (0%)
-----


zrobiłem coś takiego

RedirectMatch 301 (?!venture/img/)[a-zA-Z0-9]{1,}.jpg$ http://localhost/venture/img/$0

działa prawie idealnie localhost/venture/test.jpg -> localhost/venture/img/test.jpg (IMG:style_emoticons/default/wink.gif)
ale localhost/venture/logo/test.jpg -> localhost/venture/img/test.jpg daje niestety ten sam efekt co wyżej


RedirectMatch 301 (?!venture/img/)(.*).jpg$ http://localhost/venture/img/$0

natomiast z tym jest mały problem działało by to super jak by się dało dać pomiędzy nawiasy and

Cytat(erix @ 27.12.2011, 13:16:33 ) *
Daj RewriteCond, który sprawdza REQUEST_URI, czy masz w URL już nową ścieżkę.


zrobiłem tak:

  1. RewriteCond %{REQUEST_URI} !/venture/img
  2. RedirectMatch 301 (.*).jpg$ <a href="http://localhost/venture/img/$0" target="_blank">http://localhost/venture/img/$0</a>


ale niestety robi się pętla :/
Go to the top of the page
+Quote Post
erix
post
Post #16





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Widocznie wyrażenie masz źle skonstruowane. Pokombinuj.
Go to the top of the page
+Quote Post
zaajcu
post
Post #17





Grupa: Zarejestrowani
Postów: 206
Pomógł: 3
Dołączył: 18.08.2011
Skąd: Chrzanów

Ostrzeżenie: (0%)
-----


a możesz mi powiedzieć dlaczego:

RewriteCond %{REQUEST_URI} ^/venture/admin/
RedirectMatch 301 ((?!venture/admin/img/)[a-zA-Z0-9]+.jpg$) http://localhost/venture/admin/img/$0

jak url jest:

http://localhost/venture/test.jpg
to działa przekierowanie a nie powinno
Go to the top of the page
+Quote Post
erix
post
Post #18





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




A konkretniej?
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.12.2025 - 23:51