Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [mod_rewrite] na WebServ
Forum PHP.pl > Forum > Serwery WWW
Diwi
Witam próbuje odpalić sobie mod_rewrite w pliku .htaccess na serwerze WebServ :/
Lecz gdy wpisuje taki kod:
Kod
Options FollowSymLinks
RewriteEngine On

RewriteRule ^index.html$ index.php [L]
RewriteRule ^([^-]+).html$ index.php?strona=$1 [L]


To dostaje błąd numer 500:
Kod
BŁĄD 500
Wewnętrzny błąd serwera!


Czy popełniłem jakiś błąd w pliku .htaccess questionmark.gif

Pozdrawiam
bendi
Sproboj tak
Kod
RewriteEngine On
RewriteRule .* index.php

Jezeli dalej dostajesz 500'tke to znaczy ze nie mozesz korzystac z plikow .htaccess, sorry.
Michał Fikus
bendi: nie siej herezji bo załamiesz kolesia winksmiley.jpg

Zacznij od sprawdzenie httpd.conf:
Kod
LoadModule rewrite_module modules/mod_rewrite.so

Prawdopodobnie masz przed LoadModule znak komentarza (#) - musisz go usunąć.
Diwi
No udało mi się ukatywnić mod_rewrite w pliku httpd.conf lecz teraz następny problem :/

Wpisuje sobie takie reguły:

Kod
Options FollowSymLinks
RewriteEngine On
RewriteRule ^index.html$ index.php [L]


Po wpisaniu index.html wcale nie wyświetla mi strony index.php

Napewno to ustawienia serwera dlatego bo umieściłem taki sam plik na serwerze w necie i już wszystko działa :/ no i nie wiem co mam teraz zrobić POMÓŻCIE smile.gif

Pozdrawiam
yakuz
Odpowiedz troche po czasie ale ostatni sam miałem taki problem (znaczy dziś i przez cały dzień szukałem rozwiązania) i nie potrafiłem sobie poradzić ale udało się! i dla przyszłych szukaczy też może się powiedzie oto opis jak tego dokonałem! (robiłem to na wersji WebServ 1.2)

edycja pliku c:\WebServ\apache2\conf\httpd.conf
przechodzimy do lini ~248 i zamieniamy fragment z:
Kod
<Directory />
    Options FollowSymLinks
    AllowOverride None
</Directory>

na:
Kod
<Directory />
    Options FollowSymLinks
    AllowOverride All
</Directory>


nastepnie przechodzimy do lini ~286 i zmieniamy fragment z:
Kod
    AllowOverride None

na:
Kod
    AllowOverride All


teraz wracamy do lini ~165 i zmieniamy fragment z:
Kod
#LoadModule rewrite_module modules/mod_rewrite.so

na:
Kod
LoadModule rewrite_module modules/mod_rewrite.so


teraz restatrujemy serwer i np przeprowadzamy test:

tworzymy katalog testy i tworzymy tam 2 pliki: .htaccess i test.php
plik .htaccess wygląda tak:
Kod
Options FollowSymLinks
RewriteEngine On

RewriteRule ^test.html$ test.php [L]

a plik test.php wygląda tak:
Kod
to jest plik test.php :)


teraz łądnie wszytko zapisujemy i odpalamy z adresu: http://localhost/testy/test.html

powinien nam sie pojawic strona z napisem "to jest plik test.php smile.gif"

KONIEC smile.gif
Diwi
No cóż ja na to wpadłem wcześniej winksmiley.jpg i udało mi się rozwiązać ten problem smile.gif
Pomógł mi @hwao

Pozdrawiam
Kamils2
hi
mam webserva 1.3 bulid 2
zrobilem wszystko jtak jak tu pisano (tylko ze u mnie w tym pliku byly inne numerki linijek ale texty pozmienialem)
i rewrite dalej nie dziala :/ co moge jeszcze zrobci aby to ruszylo ?
barat
Odkryłem w czym problem smile.gif
Do htaccess dopisz po RewriteEngine On

RewriteBase /~nazwakontauseralubkatalogujakzwałtakzwał/

Nie używaj Options FollowSymLinks smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.