![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 205 Pomógł: 3 Dołączył: 20.04.2009 Skąd: Jaworzno Ostrzeżenie: (0%) ![]() ![]() |
Witam wszystkich
Na moim portalu stało się coś bardzo nie oczekiwanego, mimo że nie kombinowałem w pliku .htaccess, nagle przestały wyświetlać się obrazki (problem rozwiązałem podmianą nazw), ale chciałbym się dowiedzieć na przyszłość czym to mogło być spowodowane. Otóż problem wygląda tak. Mając "przyjazne linki" typu Kod RewriteRule ^profil/(.*)/ustaw-opis profil.php?login=$1&typ=opis RewriteRule ^profil/(.*) profil.php?login=$1 RewriteRule ^profil profil.php Wszystkie zdjęcia które znajdują się w pliku /images i mają początkową nazwę profil, niestety się nie wyświetlają. Całość działała bez problemów i nagle wszystko się zmieniło, co prawda nie było dużo takich obrazków, ale troszkę kłopotu miałem by je zmienić. To samo również tyczy się innych przekierowań: Kod RewriteRule ^krzykacz krzykacz.php obrazki z nazwą krzykacz się nie wyświetlają Początek pliku .htaccess wygląda tak: Kod RewriteEngine On
RewriteCond %{HTTP_HOST} ^domena.pl RewriteRule (.*) http://www.domena.pl/$1 [R=301,L] Ten post edytował Poker 31.08.2011, 11:40:40 -------------------- :) na miliony przyjdzie czas...
|
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 1 798 Pomógł: 307 Dołączył: 13.05.2009 Skąd: Gubin/Wrocław Ostrzeżenie: (0%) ![]() ![]() |
jeżeli w html robisz adres do obrazków tak:
Kod <img src="images/obraz.jpg"> to się nie dziw że ci dodaje "profil". Jeżeli tak, to używasz tak zwanych relatywnych adresów, a kiedy bawisz się w htaccess i twoje linki są jakby symulacją katalogów, wówczas musisz używać absolutnych adresów do plików. zarówno w html jak i css adresy do plików podajesz mniej więcej tak: absolutny adres, pełen: Kod <img src="http://strona.pl/images/obraz.jpg"> absolutny adres: Kod <img src="/images/obraz.jpg"> Jeżeli twoja strona jeszcze jest w jakimś katalogu, powiedzmy some, i adres wygląda miej więcej tak: http://strona.pl/some/index.php wtedy adresy do plików podajesz tak: absolutny adres, pełen: Kod <img src="http://strona.pl/some/images/obraz.jpg"> absolutny adres: Kod <img src="/some/images/obraz.jpg">
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 205 Pomógł: 3 Dołączył: 20.04.2009 Skąd: Jaworzno Ostrzeżenie: (0%) ![]() ![]() |
Właściwie, to w taki sposób korzystam.
Kod <link rel="stylesheet" type="text/css" href="/css/style.css" /> Następnie w css: Kod #wybierzkategorie input#przeslij {width:192px; height:42px; background: url(/images/btnzadajpytanie.png) no-repeat; border:0px; text-indent:-15000px; float:right; margin-top:15px;} I właśnie w tym wypadku problemem okazało się: Kod #wybierzkategorie input#przeslij {width:192px; height:42px; background: url(/images/[b]zadajpytaniebtn[/b].png) no-repeat; border:0px; text-indent:-15000px; float:right; margin-top:15px;} Ponieważ ten obrazek wyświetlany jest w /zadajpytanie -------------------- :) na miliony przyjdzie czas...
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Powinieneś swoje regułki stosować dopiero wtedy, gdy plik lub katalog nie istnieje:
Kod RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d czyli u Ciebie coś takiego: Kod RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^profil/(.*)/ustaw-opis profil.php?login=$1&typ=opis RewriteRule ^profil/(.*) profil.php?login=$1 RewriteRule ^profil profil.php -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 205 Pomógł: 3 Dołączył: 20.04.2009 Skąd: Jaworzno Ostrzeżenie: (0%) ![]() ![]() |
czyli u Ciebie coś takiego: Kod RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^profil/(.*)/ustaw-opis profil.php?login=$1&typ=opis RewriteRule ^profil/(.*) profil.php?login=$1 RewriteRule ^profil profil.php Zrobiłem tak, ale nadal nie daje to zamierzonych efektów. Podam konkretnie jak to wygląda. Próbuję otworzyć plik przez przeglądarkę http://www.domena.pl/images/zadajpytaniebtn.jpg I otrzymuję error Cytat Not Found The reguestet URL /images/pytaj.php was not found on this serwer w .htaccess mam Kod RewriteRule ^zadajpytanie pytaj.php -------------------- :) na miliony przyjdzie czas...
|
|
|
![]()
Post
#6
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
No a dodałeś moje rewriteCond co ci napisałem?
To rewriteCond powoduje, że jesli fizycznie na serwerze jest plik, do którego się odwołujesz, to regułka się nie wykona. Skoro tobie się regułka wykonuje to: 1) albo olałeś mojego posta i nie dodałeś rewriteCond 2) albo takie zdjęcie na serwerze fizycznie nie istnieje ps: te rewriteCond trzeba chyba dodać przed każdym rewriteRule ![]() -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 205 Pomógł: 3 Dołączył: 20.04.2009 Skąd: Jaworzno Ostrzeżenie: (0%) ![]() ![]() |
Tak dodałem teraz w .htaccess wygląda to tak
Kod RewriteEngine On RewriteCond %{HTTP_HOST} ^pytano.pl RewriteRule (.*) http://www.pytano.pl/$1 [R=301,L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^podglad/(.*)/([0-9]+) profil.php?login=$1&podglad=$2 RewriteRule ^profil/(.*)/ustaw-opis profil.php?login=$1&typ=opis RewriteRule ^profil/(.*) profil.php?login=$1 RewriteRule ^profil profil.php Zdjęcie jest na pewno na serwerze. Dodam też że wczoraj wszystko działało poprawnie, nie miałem żadnych problemów i nagle samo z siebie przestało wyświetlać pliki z nazwami profil, zadajpytanie, krzykacz... -------------------- :) na miliony przyjdzie czas...
|
|
|
![]()
Post
#8
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Spójrz na PS: z mojego poprzedniego posta
![]() w tym htaccess nie widzię nic o PYTAJ, o ktorym pisałes w poprzednim poście. -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 205 Pomógł: 3 Dołączył: 20.04.2009 Skąd: Jaworzno Ostrzeżenie: (0%) ![]() ![]() |
Dodałem przed każdym, i niestety to nic nie daje (na pewno nie u mnie)
Sam jestem w ogóle zdziwiony bo naprawdę to działało i nagle samo przestało. Mimo że nie miałem tych dodatków w .htaccess to wszystko było poprawnie wyświetlane, a wczoraj coś się zbuntowało i nagle przestało mi wyświetlać pliki. plik .htaccess jest dużo dłuższy podałem tylko cześć, dalatego nie było widać cześci "pytaj" Ten post edytował Poker 31.08.2011, 12:46:17 -------------------- :) na miliony przyjdzie czas...
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 18.08.2025 - 23:55 |