![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 24.06.2012 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
chodzi o nadawanie znaku wodnego wszystkim plikom z folderu img. Bez zbędnego pisania od razu podam swój kod .htaccess (oczywiście z folderu img): Kod RewriteEngine On RewriteCond %{REQUEST_FILENAME} -f RewriteRule \.(gif|jpeg|jpg|png)$ t.php [NC] RewriteCond %{REQUEST_FILENAME} !-f RewriteRule \.jpg$ gangsty.png [L,NC] i tak, o ile linijki dotyczące nieistniejącego pliku (!-f) działają, tak dla istniejącego - nic się nie dzieje. Przeszukałem wszelkie możliwe strony z poradnikami dot. znaku wodnego, wszędzie były podobne kody, z tym u mnie żaden nie działa. A najśmieszniejsze jest to, że wcześniej wszystko działało! Nie wiem, czy jakaś zmiana w konfiguracji, nowe standardy, czy cokolwiek? Proszę o pomoc, dodam, że mam hosting w Hitme.net.pl (swoją drogą w najgorszym miejscu hostingowym - na umożliwienie dostępu do panelu klienta oraz ustawienie wildcardu czekam od ponad miesiąca, ostatnia wiadomość jaką uzyskałem, to "(...)jutro rano(...)", 2 tygodnie temu). Pozdrawiam Ten post edytował disip 24.06.2012, 11:38:16 |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 159 Pomógł: 43 Dołączył: 8.03.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Kod RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f RewriteRule \.(gif|jpeg|jpg|png)$ a.php [NC,L] # jesli nie ma pliku RewriteRule \.(gif|jpeg|jpg|png)$ t.php [NC,L] # jesli jest plik |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 24.06.2012 Ostrzeżenie: (0%) ![]() ![]() |
Dziękuję za chęć pomocy,
jednak nadal nic się nie zmienia. Przykładowy działający link: http://gangsty.pl/img/7466bbcb298924f3c218a9ec2247f8ca.jpg jest zwykły obrazek, mimo ustawienia innego odwołania w htaccess. Tego samego dla nieistniejących plików - wystarczy zmienić byle jakie litery by odwołać się do nieistniejącego pliku, np.: http://gangsty.pl/img/aaaa.jpg Jak widać przy nieistniejących - reguła htaccess działa. A chodzi o istniejące. Ten post edytował disip 25.06.2012, 12:39:47 |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 159 Pomógł: 43 Dołączył: 8.03.2009 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 587 Pomógł: 131 Dołączył: 8.02.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
http://gangsty.pl/img/t.php zachowuje się brzydko ![]()
Jak nie zadziała to dodaj logowanie i przeanalizuj.
A i daj jeszcze :
Ten post edytował rocktech.pl 25.06.2012, 13:03:11 -------------------- Despite the tons of examples and docs, mod_rewrite is voodoo. Damned cool voodoo, but still voodoo. --Brian Moore
I never go looking for a sucker. I look for a Champion and make a sucker of of him. --Amarillo Slim Home-made : js-gui-classes | Accordion | Tabs | Carousel / php-sms-classes | Obsługa bramki SMS MultiInfo | Obsługa bramki SMS Mobiltek |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 24.06.2012 Ostrzeżenie: (0%) ![]() ![]() |
Właśnie nie o taki efekt chodziło. U mnie wygląda to tak samo. Tak, mam Chroma. Chodzi o to, że gdy plik nie istnieje - wyświetla się obrazek gangsty.pl Gdy plik istnieje - powinien zostać przepuszczony przez skrypt t.php, który dodaje znak wodny. Jak widać tak się nie dzieje. rocktech.pl - zachowuje się brzydko gdy odpala się go na sucho - później to zmienię. Nie mniej jednak sam skrypt z plikiem robi to co powinien. Później przeanalizuję kody, które mi podpowiedziałeś - teraz muszę spadać. Dziękuję za pomoc, pod wieczór dam znać co i jak ![]() |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 159 Pomógł: 43 Dołączył: 8.03.2009 Ostrzeżenie: (0%) ![]() ![]() |
Przeciez jesli plik nie istnieje to wyswietla sie obrazek gangsty, a gdy istnieje to zostaje wyswietlony i ma jakis znak wodny w prawym dolnym rogu, chyba ze nie o ten znak wodny chodzi ale wtedy problem moze lezec po stronie skryptu, a nie modrewrite. Przekazujesz jakos skryptowi adres do obrazka ktory chcesz wyswietlic, a ktory on ma przetworzyc ? Wstaw sobie jakies echo do tego pliku t.php i wejdz w ktorys z obrazkow, jesli pojawi sie napis to bedzie znaczylo ze modrewrite przepisuje dobrze. Przyklad ktory ja Ci podalem dziala bo go testowalem, a RewriteCond dziala jak if wiec nie trzeba testowac 2 razy tego samego ... jesli sprawdzasz czy plik nie istnieje:
Kod RewriteCond %{REQUEST_FILENAME} !-f a za tym masz instrukcje z flaga L (last) to po co dalej sprawdzasz czy plik istnieje. To jak by napisac funkcjeKod function przyklad($i){ przeciez wiadomo ze jesli kod za 1 ifem sie wykona to $i jest rozne od 1.
if($i==1) return true; if($i!=1) return false; } |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 24.06.2012 Ostrzeżenie: (0%) ![]() ![]() |
Nie chodzi o ten znak. Ten już był na tym obrazku.
Nie jestem głupi, sprawdzałem czy skrypt działa. Równie dobrze mogę dać echo, mogę wysłać inny obrazek ze skryptu, w htaccess mogę nawet zamiast odwołania do skryptu dać odwołanie do innego obrazka. Mimo wszystko to nadal nie działa jeśli plik faktycznie istnieje. //edit - rocktech.pl - Twój kod nie działa. Co to za ścieżka w logowaniu? Domyślam się, że powinienem ją jakoś pod siebie przerobić, tylko czy ona ma gdzieś konkretnie prowadzić? Czy wpiszę byle jaką ścieżkę, a plik z logami sam się utworzy? Chyba nie, bo przeszukałem cały hosting i nigdzie nie ma tych logów. RewriteLog ... RewriteLogLevel ... z tymi linijkami rewrity nie działają nawet dla nieistniejących. Adios - nie musisz mi tłumaczyć logiki, bo ja wiem, że to POWINNO działać, tak samo jak to, co miałem, bo DZIAŁAŁO, do czasu. Wychodzi na to, że śmieszne Hitme.net.pl zrypało jakoś konfigurację. Poraz setny, zawsze coś. A na zgłoszenia nie odpisują. Rozumiem, że nic nie da rady zrobić? ![]() Zmieniam hosting. Na nowym nie ma najmniejszego problemu. Ten post edytował disip 25.06.2012, 20:58:56 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 07:50 |