Apache nie reaguje na zmiany reguł mod_rewrite w htaccess

Bash, C, C++, Java, PHP, Ruby, GTK, Qt i wiele innych - wszystko tutaj.
kampo
Sędziwy Jeż
Sędziwy Jeż
Posty: 81
Rejestracja: 01 gru 2009, 21:52
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: LXDE
Architektura: x86_64
Kontakt:

Apache nie reaguje na zmiany reguł mod_rewrite w htaccess

Post autor: kampo »

Witam.

Męcze się i męcze, już powoli szlag mnie trafia. Apache w ogóle nie chce reagować na zmiane regułek. Takie jakie kiedyś tam wklepałem jakby sie zcachowaly i nie chciały odświeżyć. Nowe, które dopisuję też nie chcą działać.

Mam zanstalowany serwer na swoim komputerze i najprostsza regułka:

Kod: Zaznacz cały

RewriteRule ^blog$ blog.php [L]
działa tylko u mnie, bo jak przeniose strone na host, nagle przestaje (inne, które były wcześniej, oczywiście działają).

Próbowałem zmieniać nazwe pliku htaccess, odświeżyć strone, zmienić spowrotem na poprawną nazwe, ale nic to nie daje. Szukałem coś o cachowanie tego pliku przez apache, ale niczego się nie doszukałem. Nie mam innego pomysłu, przez co może się to dziać. Jest jakiś sposób, żeby KAŻDĄ zmianę pliku serwer widział i zastosował?

Pozdrawiam.
Ubek308
Zakręcona Traszka
Zakręcona Traszka
Posty: 574
Rejestracja: 25 maja 2011, 10:17
Płeć: Mężczyzna
Wersja Ubuntu: 11.04
Środowisko graficzne: GNOME
Architektura: x86_64

Re: Apache nie reaguje na zmiany reguł mod_rewrite w htaccess

Post autor: Ubek308 »

Regula nie dziala gdy pattern nie pasuje.

Zaloze sie ze nie masz takiej strony jak 'blog'.
Co najmniej masz 'http://blog.pl' albo wewnatrz serwera - '/blog/'
kampo
Sędziwy Jeż
Sędziwy Jeż
Posty: 81
Rejestracja: 01 gru 2009, 21:52
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: LXDE
Architektura: x86_64
Kontakt:

Re: Apache nie reaguje na zmiany reguł mod_rewrite w htaccess

Post autor: kampo »

Zaloze sie ze nie masz takiej strony jak 'blog'.
No to przegrany zakład.
działa tylko u mnie, bo jak przeniose strone na host, nagle przestaje (inne, które były wcześniej, oczywiście działają).
Co tu jest niezrozumiałe?

Plus
Męcze się i męcze, już powoli szlag mnie trafia
wskazuje, że jednak próbowałem to naprawić, plus to, że w takiej regułce nie można zrobić błędu ;) Dodam jeszcze, że przy błędzie, pierwsze co robię, to sprawdzam literówki, kombinuje z innymi rozwiązaniami, szukam w internecie i dopiero jak nie znajde, to pisze na forum. Ale to nieważne. Ważne jest to, że nie działa (nie "odświeża się"?) i nie mam pojęcia dlaczego.

Pozdrawiam.
Awatar użytkownika
ethanak
Wygnańcy
Posty: 3054
Rejestracja: 04 gru 2007, 13:19
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86
Lokalizacja: Bielsko-Biała
Kontakt:

Re: Apache nie reaguje na zmiany reguł mod_rewrite w htaccess

Post autor: ethanak »

Może głupie pytanie... ale czy ten plik na pewno nazywa się "htaccess"?
kampo
Sędziwy Jeż
Sędziwy Jeż
Posty: 81
Rejestracja: 01 gru 2009, 21:52
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: LXDE
Architektura: x86_64
Kontakt:

Re: Apache nie reaguje na zmiany reguł mod_rewrite w htaccess

Post autor: kampo »

Czy Wy macie mnie za kretyna?Pytam serio... :)

Zacytuje jeszcze raz
działa tylko u mnie, bo jak przeniose strone na host, nagle przestaje (inne, które były wcześniej, oczywiście działają).
O prosze, nawet jest jeszcze taki kawałek:
Próbowałem zmieniać nazwe pliku htaccess, odświeżyć strone, zmienić spowrotem na poprawną nazwe, ale nic to nie daje.
Pozdrawiam.
Awatar użytkownika
ethanak
Wygnańcy
Posty: 3054
Rejestracja: 04 gru 2007, 13:19
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86
Lokalizacja: Bielsko-Biała
Kontakt:

Re: Apache nie reaguje na zmiany reguł mod_rewrite w htaccess

Post autor: ethanak »

Nie mamy Cię za kretyna. Pytałem poważnie: czy ten plik nazywa się "htaccess"?
A podstawy do takiego pytania mam akurat po przeczytaniu powyższych cytowanych cytatów ;)
kampo
Sędziwy Jeż
Sędziwy Jeż
Posty: 81
Rejestracja: 01 gru 2009, 21:52
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: LXDE
Architektura: x86_64
Kontakt:

Re: Apache nie reaguje na zmiany reguł mod_rewrite w htaccess

Post autor: kampo »

Gdyby tak było, wtedy napisałbym, że żadna regułka nie działa, a jakieś działają :) A z tą zmianą to tylko końcówke dodałem, żeby go "zgubił", a potem wczytał od nowa, z nowymi regułkami, no ale nie podziałało. U mnie na komputerze też niezawsze odświeżał regułki, więc nie wiem od czego to zależy.
Awatar użytkownika
ethanak
Wygnańcy
Posty: 3054
Rejestracja: 04 gru 2007, 13:19
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86
Lokalizacja: Bielsko-Biała
Kontakt:

Re: Apache nie reaguje na zmiany reguł mod_rewrite w htaccess

Post autor: ethanak »

A ja znałem takie głupie przypadki hostingów, gdzie użytkownik nie miał dostępu przez ftp do ukrytych plików, a zamiast ".htaccess" wgrywało się "htaccess" przy czym hosting robił z nim jakąś magię i w rzeczywistości lądowały tam dwa pliki htaccess i .htaccess.
Dlatego grzecznie pytałem (a Ty oczywiście nie raczyłeś udzielić odpowiedzi) czy plik nazywa się "htaccess" czy może jakoś inaczej (np. ".htaccess").
kampo
Sędziwy Jeż
Sędziwy Jeż
Posty: 81
Rejestracja: 01 gru 2009, 21:52
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: LXDE
Architektura: x86_64
Kontakt:

Re: Apache nie reaguje na zmiany reguł mod_rewrite w htaccess

Post autor: kampo »

Nazywa się dokładnie .htaccess,a dostęp do niego na pewno mam.
Awatar użytkownika
kabanek
Zakręcona Traszka
Zakręcona Traszka
Posty: 592
Rejestracja: 23 cze 2009, 20:34
Płeć: Mężczyzna
Wersja Ubuntu: 13.10
Środowisko graficzne: Xfce
Architektura: x86_64
Kontakt:

Re: Apache nie reaguje na zmiany reguł mod_rewrite w htaccess

Post autor: kabanek »

to pokaż ten plik :) łatwiej będzie znaleźć przyczynę błędu
kampo
Sędziwy Jeż
Sędziwy Jeż
Posty: 81
Rejestracja: 01 gru 2009, 21:52
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: LXDE
Architektura: x86_64
Kontakt:

Re: Apache nie reaguje na zmiany reguł mod_rewrite w htaccess

Post autor: kampo »

Kod: Zaznacz cały

RewriteEngine on
RewriteBase /strona

# Podstawa
RewriteRule ^portfolio$ index.php [L]
RewriteRule ^blog$ blog.php [L]
RewriteRule ^kontakt$ contact.php [L]
RewriteRule ^mapa$ siteMap.php [L]
RewriteRule ^regulamin$ rules.php [L]
Tak on wygląda. Są jeszcze inne regułki, ale zakomentowane i sa na samym dole, więc wpływu na to nie mają. I tak jak pisałem: na moim komputerze ładnie działa, a na serwerze nie (kiedyś nie było tej linijki, dodałem potem tylko tą, ale on tego nie wyłapał i za nic nie chce działać). Jak widać, nic ciężkiego tutaj nie ma, nawet nie można popełnić błędu.
nycko
Sędziwy Jeż
Sędziwy Jeż
Posty: 32
Rejestracja: 10 sty 2011, 13:15
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Inne
Architektura: x86_64

Re: Apache nie reaguje na zmiany reguł mod_rewrite w htaccess

Post autor: nycko »

skasuj/zakomentuj

Kod: Zaznacz cały

RewriteBase /strona
na localu przestanie działać, ale może na hostingu ruszy[/size]
sorry nie doczytałem, że wsio inne działa, głupio "zaśmieciłem" temat
Ubek308
Zakręcona Traszka
Zakręcona Traszka
Posty: 574
Rejestracja: 25 maja 2011, 10:17
Płeć: Mężczyzna
Wersja Ubuntu: 11.04
Środowisko graficzne: GNOME
Architektura: x86_64

Re: Apache nie reaguje na zmiany reguł mod_rewrite w htaccess

Post autor: Ubek308 »

Jest jeszcze inny potencjalny powod choc wątpie zeby to bylo to.
Twoj hosting serwer po prostu nie pozwala na rewrite.
Awatar użytkownika
ethanak
Wygnańcy
Posty: 3054
Rejestracja: 04 gru 2007, 13:19
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86
Lokalizacja: Bielsko-Biała
Kontakt:

Re: Apache nie reaguje na zmiany reguł mod_rewrite w htaccess

Post autor: ethanak »

Jeszcze inny (pewnie głupi i od dawna nieaktualny, ale wszystko możliwe)
Na hostingu jest Apache 1.3 a nie 2.x (wymagany wiodący slash przy RewriteRule, pamiętam że kiedyś przy tym mało nie osiwiałem jak przenosiłem serwis z 1.3 na 2.0)
Na rybkę: spróbuj testowo usunąć wiodący ^ z RewriteRule, może pomoże?
kampo
Sędziwy Jeż
Sędziwy Jeż
Posty: 81
Rejestracja: 01 gru 2009, 21:52
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: LXDE
Architektura: x86_64
Kontakt:

Re: Apache nie reaguje na zmiany reguł mod_rewrite w htaccess

Post autor: kampo »

Może inaczej...chyba źle formułuję zdania (z tego nigdy nie byłem dobry ;)).

U mnie na komputerze działa dosłownie wszystko, z blogiem włącznie, jednak chciałem sobie zrobić też przyjazne linki dla stron bloga, postów itd., ale nowe regułki nie działają. Jakby się nie odświeżało.
To samo na serwerze. Były sobie jakieś tam regułki, które działają normalnie (wersje Apache mam 2.x - z phpinfo() wyświetla "Server API - Apache 2.0 Handler", czyli teoretycznie serwer ma wersje conajmniej 2, ale nie wiem czy to to). Potem, jak już zrobiłem skrypt bloga na moim komputerze, przeniosłem wszystko na serwer (zmieniła się tylko baza, ale to nieistotne, kod strony i plik htaccess). Kod strony na pewno ładnie hula, ale do blogu muszę się dostać przez "PHPowaty" link, bo przekierowanie nie chce działać.
Próbowałem też zrobić to, co zaproponował ethanak, ale i tak nie działa. Wygląda na to, że ten plik htaccess sie gdzieś zcacheował, bo "dżiliard" sposobów na naprawe tego nie poskutkowało. Kombinowałem chyba ze wszystkim i już nie mam pomysłów.

Jak nie będzie sposobu na to, to trudno. Będą normalne linki tylko przy blogu. Ale dobrze by było do tego dojść, co go "boli", bo troche by to też dziwnie wyglądało ;)

Pozdrawiam.
Awatar użytkownika
rob006
Wytworny Kaczor
Wytworny Kaczor
Posty: 417
Rejestracja: 28 paź 2007, 23:11
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: Unity
Architektura: x86_64
Lokalizacja: Lublin
Kontakt:

Re: Apache nie reaguje na zmiany reguł mod_rewrite w htaccess

Post autor: rob006 »

Akurat czy się gdzieś magicznie nie skeszował jest dość łatwo sprawdzić - wystarczy zepsuć htaccess - wpisać do niego coś głupiego. :D Powinna wyskoczyć wtedy 500.
Poza tym w takich beznadziejnych sytuacjach gdzie działający kod nie działa, warto jeszcze raz przepisać z palca polecenia i zbadać nazwy plików - ja raz kilka godzin straciłem na rozkminianiu czemu skrypt nie działa, żeby w końcu zauważyć różnicę pomiędzy "I" a "l"...
kampo
Sędziwy Jeż
Sędziwy Jeż
Posty: 81
Rejestracja: 01 gru 2009, 21:52
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: LXDE
Architektura: x86_64
Kontakt:

Re: Apache nie reaguje na zmiany reguł mod_rewrite w htaccess

Post autor: kampo »

Spróbowałem popsuć go 2x. Ładnie wyświetlał błąd 500 na każdej podstronie. Potem cofałem zmiany, zapisywałem, on spowrotem przekierowywał tak jak wcześniej, ale przekierowanie do blogu...nie działało, więc to chyba nie jest cache. Literówki na pewno nigdzie nie ma, bo przecież u mnie by nie działało, zresztą sprawdzałem w razie czego i nie ma.

Strasznie uparty jest :( Macie jakieś inne pomysły?
Awatar użytkownika
ethanak
Wygnańcy
Posty: 3054
Rejestracja: 04 gru 2007, 13:19
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86
Lokalizacja: Bielsko-Biała
Kontakt:

Re: Apache nie reaguje na zmiany reguł mod_rewrite w htaccess

Post autor: ethanak »

Jedyne co mi przychodzi do głowy to błąd w RewriteBase (akurat tu możesz mieć inaczej w domu i i na serwerze).
Nie powinno być "/" zamiast "/strona" przypadkiem?
Tak se gdybam...
kampo
Sędziwy Jeż
Sędziwy Jeż
Posty: 81
Rejestracja: 01 gru 2009, 21:52
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: LXDE
Architektura: x86_64
Kontakt:

Re: Apache nie reaguje na zmiany reguł mod_rewrite w htaccess

Post autor: kampo »

Nie, to też nie to. Na komputerze i serwerze mam tak samo.

No nic, narazie zrobię zwykły link, ale temat niech zostanie. Może ja, albo ktoś inny wpadnie na rozwiązanie, to się podzieli :)

Dzięki wszystkim za pomoc.

Pozdrawiam.

-- 31 gru 2011 00:27 --

Odświeżam temat, ponieważ znowu zacząłem się nad tym głowić. Zrobiłem coś, czego chyba nie robiłem wcześniej, czyli zamiast przepisywać ^blog$, przepisalem ^blogg$ do pliku blog.php i...działa! Dodałem inne regułki i też działają.

Nie wiem, czy coś da ta informacja, ale jest to ciekawe moim zdaniem. Czemu działa wszystko, tylko nie "blog"?

Pozdrawiam.
ODPOWIEDZ

Wróć do „Programowanie”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 2 gości