Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MOD_REWRITE] Denerwujący problem z, proszę o pomoc, urle się foszą + brak grafiki/plików zewnętrznych
-forrestar-
post 5.11.2007, 01:09:39
Post #1





Goście







Witam, od razu przejdę do rzeczy.

Proszę wejść na stronę http://strzyzow-orka.com

Przed chwilą zacząłem się bawić mode_rewrite, efektem czego są linki typu:

http://strzyzow-orka.com/glowna
http://strzyzow-orka.com/aktualnosci

Dodałem też wyrażenie regularne, która pozwala mi na taki link -> http://strzyzow-orka.com/aktualnosci,1

Moje wyrażenie wyglądają tak:

Kod
# ustawienie przepisywania linkow

RewriteEngine on

RewriteRule ^rss?$ files/orka_rss.html [L,NC]
RewriteRule ^mapa?$ mapa_strony.php [L,NC]
RewriteRule ^glowna?$ index.php [L,NC]
RewriteRule ^aktualnosci?$ aktualnosci.php [L,NC]

RewriteRule ^aktualnosci,([0-9]+)?$ aktualnosci.php?display=news&id=$1 [L,NC]

RewriteRule ^ofirmie?$ ofirmie.php [L,NC]
RewriteRule ^oferta?$ oferta.php [L,NC]
RewriteRule ^osiagniecia?$ osiagniecia.php [L,NC]
RewriteRule ^filmy?$ filmy.php [L,NC]
RewriteRule ^galerie?$ galerie.php [L,NC]
RewriteRule ^kontakt?$ kontakt.php [L,NC]


Wszystko ładnie działa, ale ... :wink:




PROBLEM PIERWSZY
----------------------------------


Można zauważyć, że w na końcu każdego adresu nie ma slasha. Próbowałem dodawać taką regułę:

Kod
RewriteRule ^glowna/?$ index.php [L,NC]


i wejść na adres http://strzyzow-orka.com/glowna/ i co...?

I owszem, działa. Ale niestety jak działa? Źle działa :wink: . Problemem jest to, że kiedy adres jest ze slashem na końcu, to nie wiem, moduł traktuje to chyba jako oddzielny podfolder, efektem czego są: brak grafiki i brak stylów css. Z regułą bez slasha i adresem bez slasha wszystko działa OK - ze slashem się foszy.

Czy ktoś wie, w czym problem?

UWAGA: Mogę odpalić tą regułę, w celach poglądowych, jeśli ktoś chciałby zobaczyć ten efekt i pomogłoby mu to w ... pomocy mi winksmiley.jpg .




PROBLEM DRUGI
----------------------------------


Jest bardzo podobny do pierwszego.

Jak można zauważyć w linku http://strzyzow-orka.com/aktualnosci,1 separatorem pomiędzy aktualnościami , a numerem danego newsa jest , (przecinek).

Jeśli użyję reguły:

Kod
RewriteRule ^aktualnosci/([0-9]+)?$ aktualnosci.php?display=news&id=$1 [L,NC]


i wejdę na adres http://strzyzow-orka.com/aktualnosci/1 co się ukaże moim oczom? Owszem, wyświetli mi danego newsa, ale ponownie - strona wyświetli się bez grafiki i stylów, tak jakby była w jakimś podfolderze i nie miała dostępu do obrazów i css. Wolę więc nie myśleć co by było dodatkowo po dodaniu slasha na końcu adresu...

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

Jeśli tylko ktoś może mi pomóc, będę bardzo wdzięczny.

pozdrawiam serdecznie
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
-forrestar-
post 5.11.2007, 01:58:49
Post #2





Goście







UPDATE: zmieniłem separator z przecinka na pauze ( http://strzyzow-orka.com/aktualnosci-1 )

problem dalej jest nierozwiązany, proszę o pomoc!
Go to the top of the page
+Quote Post
Kicok
post 5.11.2007, 17:16:01
Post #3





Grupa: Zarejestrowani
Postów: 1 033
Pomógł: 125
Dołączył: 17.09.2005
Skąd: Żywiec

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


HTML <base> albo zamiast pisać:
  1. <img src="obrazek.jpg" />


pisz:
  1. <img src="/obrazek.jpg" />


--------------------
"Sumienie mam czyste, bo nieużywane."
Go to the top of the page
+Quote Post
-forrestar-
post 5.11.2007, 22:05:04
Post #4





Goście







Ok, podziałało dodanie slasha do ścieżek winksmiley.jpg.

Jednak jest jeszcze jeden problem:



UPDATE:

Doszedłem do ładu z grafiką i plikami zewnętrznymi.

Jednak pozostaje problem dopisywania ciągów do adresu.

Czyli w skrócie - proszę wejść na http://strzyzow-orka.com/aktualnosci/1 - strona tym razem wyświetli się już poprawnie, jednak proszę spróbować wtedy kliknąć na któryś z linków z menu.

Dostaniemy 404, bo do adresu linków "dopisały się" samoistnie aktualnosci . Jak z tym sobie poradzić smile.gif?
Go to the top of the page
+Quote Post
wielokropek
post 5.11.2007, 23:38:55
Post #5





Grupa: Zarejestrowani
Postów: 34
Pomógł: 1
Dołączył: 23.04.2006

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


Dopisać slashe do linków? Lepiej dopisz <base> - wszystko załatwisz za jednym zamachem.
Go to the top of the page
+Quote Post
-forrestar-
post 6.11.2007, 00:44:35
Post #6





Goście







Uh... czyli co dokładnie mam dopisać winksmiley.jpg ?

Jak ten problem rozwiązać? Uff, proszę o pomoc, bo denerwuje mnie to okropnie!
Go to the top of the page
+Quote Post
-forrestar-
post 6.11.2007, 02:26:57
Post #7





Goście








PROBLEM ROZWIĄZANY
-------------------------------------



Uff, wreszcie się z tym uporałem winksmiley.jpg..

Podziałało równoczesne dodanie

Kod
<base href="http://strzyzow-orka.com/" />


do sekcji head oraz dodanie do adresów plików zewnętrznych slasha na początek (np. /files/orka_scripts.js ). Na początku dodawałem tego slasha do adresów obrazów w stylach CSS ( background-image: url('/gfx/bg.gif') ), co było błędem.

Zaś same reguły przedstawiają się następująco:

Kod
RewriteEngine on

RewriteRule ^admin?$ /admin/ [R]
RewriteRule ^admin/?$ files/admin.php [L,NC]

RewriteRule ^rss?$ /rss/ [R]
RewriteRule ^rss/?$ files/orka_rss.html [L,NC]

RewriteRule ^glowna?$ /glowna/ [R]
RewriteRule ^glowna/?$ index.php [L,NC]

RewriteRule ^mapastrony?$ /mapastrony/ [R]
RewriteRule ^mapastrony/?$ mapa_strony.php [L,NC]

RewriteRule ^([a-zA-Z]+)?$ /$1/ [R]
RewriteRule ^([a-zA-Z]+)/?$ $1.php [L,NC]

RewriteRule ^([a-zA-Z]+)/([0-9]+)?$ /$1/$2/ [R]
RewriteRule ^([a-zA-Z]+)/([0-9]+)/?$ $1.php?display=news&id=$2 [L,NC]


To tak dla potomności, może ktoś będzie miał w przyszłości podobny problem :wink: .
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 Wersja Lo-Fi Aktualny czas: 24.07.2025 - 19:57