Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

2 Stron V   1 2 >  
Reply to this topicStart new topic
> RewriteRule i brak ładującego się CSS'a
Garrett
post
Post #1





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 21.03.2010

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


Witam

Podczas konfiguracji linków przyjaznych natrafiłem na następujący problem:
Pierwotny adres przykładowego newsa na stronie glównej ma taką postać:
/index.php?id=58&action=pokaz

reguła re-write w pliku .htaccess wygląda następująco:
RewriteRule ^news,([0-999]+)/(pokaz)/?$ index.php?id=$1&action=$2

W przypadku wejścia z bezpośredniego adresu, strona wyświetla się prawidłowo, natomiast, gdy użyję adresu /news,58/pokaz/, strona ładuje się, ale bez CSS'a ohno-smiley.gif

Czy ktoś byłby w stanie pomóc mi w rozwiązaniu tego problemu?

Ten post edytował Garrett 5.09.2014, 10:23:57
Go to the top of the page
+Quote Post
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Problem poruszany petryliard razy....

Linki mają wyglac tak:
http://pelnyadresdostrony.pl/plik.css

a nie tak:
plik.css


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

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
trueblue
post
Post #3





Grupa: Zarejestrowani
Postów: 6 806
Pomógł: 1828
Dołączył: 11.03.2014

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


Możesz jeszcze użyć: http://www.w3schools.com/tags/tag_base.asp


--------------------
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Osobiscie nie polecam stosowanie BASE. Kiedys tez tego uzywalem, ale mialem jakies dzikie przeboje z tym w jakiejs sytuacji. Nie pamietam o co chodzilo, ale od tamtej pory unikam tego jak ognia smile.gif


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

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Garrett
post
Post #5





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 21.03.2010

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


O ile dobrze zrozumiałem, jeśli rewrite jest włączony, przeglądarka nie rozumie zapisu <link href="default.css" rel="stylesheet" type="text/css" /> ?
Go to the top of the page
+Quote Post
trueblue
post
Post #6





Grupa: Zarejestrowani
Postów: 6 806
Pomógł: 1828
Dołączył: 11.03.2014

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


Rozumie.

Masz niedoprecyzowane reguły w htaccess. Można wykluczyć przepisywanie jeśli dotyczy np. plików .css, .js, obrazków, itd.

Ten post edytował trueblue 5.09.2014, 11:12:04


--------------------
Go to the top of the page
+Quote Post
Garrett
post
Post #7





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 21.03.2010

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


W takim razie bardzo prosiłbym o polecenia na wykluczenie tych wszystkich rzeczy (właśnie obrazki zaczęły mi się sypać...)
Go to the top of the page
+Quote Post
trueblue
post
Post #8





Grupa: Zarejestrowani
Postów: 6 806
Pomógł: 1828
Dołączył: 11.03.2014

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


RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^news,([0-999]+)/(pokaz)/?$ index.php?id=$1&action=$2


--------------------
Go to the top of the page
+Quote Post
Garrett
post
Post #9





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 21.03.2010

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


Cytat(trueblue @ 5.09.2014, 12:37:59 ) *
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^news,([0-999]+)/(pokaz)/?$ index.php?id=$1&action=$2


Niestety po wpisaniu tego co podałeś, nadal nie działają obrazki, ani arkusze stylów css.
Go to the top of the page
+Quote Post
trueblue
post
Post #10





Grupa: Zarejestrowani
Postów: 6 806
Pomógł: 1828
Dołączył: 11.03.2014

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


Jak wygląda cały htaccess?


--------------------
Go to the top of the page
+Quote Post
Garrett
post
Post #11





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 21.03.2010

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


  1. #zablokowanie możliwości przeglądania katalogów strony
  2. Options -Indexes
  3. #blokujemy (lub zezwalamy - "allow") dostęp do strony po IP
  4. deny from 123.456.789.000
  5.  
  6. #strona startowa (można dowolnie edytować!) :)
  7. DirectoryIndex index.php
  8.  
  9. Options FollowSymLinks
  10. RewriteEngine On
  11. RewriteBase /
  12.  
  13.  
  14. RewriteRule ^newsy$ index.php
  15. RewriteRule ^pobierz$ pobierz.php
  16. RewriteRule ^galeria$ galeria.php
  17. RewriteRule ^mix$ mix.php
  18. RewriteCond %{REQUEST_FILENAME} !-f
  19. RewriteCond %{REQUEST_FILENAME} !-d
  20. RewriteRule ^news,([0-999]+)/(pokaz)/?$ index.php?id=$1&action=$2
  21.  
  22. #RewriteRule ^news,([0-999]+)\.html$ index.php?id=$1
  23.  
  24. RewriteRule ^kontakt$ kontakt.php [L]
  25. #L - last line
  26.  
  27. :Location /*.php
  28. Use php54
  29. :Location
  30.  
  31. :Location /cron-weekly.php
  32. Access deny all
  33.  
  34. #ostatnia linia musi być pusta!
  35.  
Go to the top of the page
+Quote Post
trueblue
post
Post #12





Grupa: Zarejestrowani
Postów: 6 806
Pomógł: 1828
Dołączył: 11.03.2014

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


Te dwa warunki powinny zadziałać, ale tylko do dla tego przepisywania:
RewriteRule ^news,([0-999]+)/(pokaz)/?$ index.php?id=$1&action=$2

Czy właśnie tu jest źle?


--------------------
Go to the top of the page
+Quote Post
Garrett
post
Post #13





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 21.03.2010

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


Nie mam pojęcia, bo pierwszy raz zajmuje się formułowaniem wyrażeń regularnych w htaccesie ;D Pytasz bo nie wiesz czy pytasz bo mnie sprawdzasz? biggrin.gif

Ten post edytował Garrett 5.09.2014, 12:12:33
Go to the top of the page
+Quote Post
trueblue
post
Post #14





Grupa: Zarejestrowani
Postów: 6 806
Pomógł: 1828
Dołączył: 11.03.2014

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


Pytam, bo obecnie pliki powinny ładować się poprawnie, ale tylko pod adresami o budowie, która jest w tej regule, a nie wiem czy Ty pisząc o tym, że się nie ładują testujesz pod tego typu adresem, czy innym.


--------------------
Go to the top of the page
+Quote Post
Garrett
post
Post #15





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 21.03.2010

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


TYLKO POD TYM ADRESEM NIE DZIAŁAJĄ. Hiperłącza też mi się posypały, dodają "news,XX/pokaz/" przed właściwą ścieżką... Już powoli nie ograniam co się dzieje... facepalmxd.gif

Zauważyłem coś takiego, reguła

RewriteRule ^news,([0-999]+)$ index.php?id=$1

działa poprawnie, natomiast

RewriteRule ^news,([0-999]+)/$ index.php?id=$1
już nie (nie wczytuje sie css i obrazki...)


Może coś Ci to powie smile.gif

Ten post edytował Garrett 5.09.2014, 13:26:18
Go to the top of the page
+Quote Post
nospor
post
Post #16





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Regula tu nie ma nic do rzeczy....

jesli masz adres katalogowy, czyli taki: blabla/blabla to jak nie podasz pelnej sciezki to plik
plik.css bedzie szukany pod adresem blabla/plik.css (takie żądanie wysyła przeglądarka i htaccess nie ma tu nic do gadania) a nie pod adresem plik.css.

Dlatego tak wazne jest podawanie pelnych adresow do plikow js, css, czy obrazkow.
http://pelnyadres.pl/plik.css

Nie kombinuj wiec, tylko zacznij pisac w koncu poprawnie.


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

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
trueblue
post
Post #17





Grupa: Zarejestrowani
Postów: 6 806
Pomógł: 1828
Dołączył: 11.03.2014

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


Racja, nospor.

Chociaż ja byłbym nadal za base href, ewentualnie absolutnymi ścieżkami.


--------------------
Go to the top of the page
+Quote Post
nospor
post
Post #18





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
ewentualnie absolutnymi ścieżkami.
A to o czym piszę, to niby co jest jak nie ścieżka absolutna? To jest pelna sciezka absolutna.

Jesli zas miales na mysli by pisac tak:
/plik.css to też do konca to nie jest poprawne. Bo jesli ktos ma glowny adres taki:
http://mojastrona/forum/index.php i pliki css leżą w katalogu forum to jak da /plik.css to znowu bedzie źle bo bedzie mu szukac w katalogu glownym. Dlatego należy konkretnie okreslac sciezki, a uniknie się glupich bledow i biedy, ze nagle przestalo dzialac...


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

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
trueblue
post
Post #19





Grupa: Zarejestrowani
Postów: 6 806
Pomógł: 1828
Dołączył: 11.03.2014

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


Miałem na myśli: sciezka="/blabla/plik.jpg".


--------------------
Go to the top of the page
+Quote Post
nospor
post
Post #20





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Tak myslalem, dlatego edytowalem posta. Spojrz.


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

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 21.08.2025 - 13:05