Citat:
Originalno napisao Miroslav
Što se tiče mog prvog pitanja, malo ću ga preformulisati:
Kako da podesim u Apachu da mi kontakt bude isto kao i kontakt.php, dakle da ne moram da pišem .php ekstenziju?
Znači, Apach prvo traži folder kontakt, ako ga ne nađe onda traži fajl kontakt i ako ga nađe otvori ga.
Kod nekih hosting provajdera se podrazumeva da je ovo već podešeno, dok kod nekih ne.
|
Ubedljivo najčešći razlog za nefunkcionisanje sadržaja
.htaccess fajlova je neadekvatno podešavanje Apachea tj. njegovih konfiguracionih fajlova gde za folder gde se nalazi
.htaccess nije data dovoljno velika sloboda instrukcijama u njemu da se uspešno izvrše. Prava instrukcija koje mogu ili ne mogu da se izvrše u određenom folderu se podešavaju
AllowOverride Apache direktivom.
ForceType direktiva zahteva da folder nad kojim se izvršava (tačnije folder u kome se nalazi
.htaccess fajl sa
ForceType direktivom) mora da ima minimalno
FileInfo dozvolu da bi se uspešno izvršila. Postoji nekoliko rešenja za ovaj problem.
Prvo je da se u globalnom serverskom fajlu Apachea izmeni vrednost
AllowOverride directive za
DocumentRoot da sadrži minimalno vrednost
FileInfo ili alternativno
All koji bi sadržao i
FileInfo u sebi. Ovaj pristup ne preporučujem uopšte.
Pametniji pristup bi bio da se pravo definiše na nivou zasebnog foldera kroz
Directory direktivu. Recimo kao u sledećem kodu (
Alias na kraju nije neophodan ali ja ga recimo često koristim da bih lakše došao do dugačkih staza.)
Kôd:
#Webgrind Alias
<Directory "C:/wamp/htdocs/sandbox/">
Order deny,allow
Deny from all
Allow from 127.0.0.1
AllowOverride FileInfo
</Directory>
Alias /sandbox "C:/wamp/htdocs/sandbox/"
Posle izmene Apache konfiguracionih fajlova treba
restartovati server.
Staze za WAMP sam bezveze lupio tako da je velika šansa da sam ih omašio jer te "all in one" sisteme nisam nikada koristio. Tvoji fajlovi (uključujući i .htaccess) bi u ovom slučaju bili smešteni u folderu
C:/wamp/htdocs/sandbox/ i ako je sve urađeno kako treba trebalo bi da funkcioniše to što želiš mada opet kažem, "all in one" paketi često imaju običaj da odtsupaju od podešavanja koja se koriste na produkcionim serverima tako da možda još nešto u tom WAMP paketu pravi problem.
Moja preporuka ti je ipak da se okaneš
ForceType direktive zbog toga što ona bez obzira na MIME tipove fajlova forsira server da tretira fajl drugačije od prirode samog fajla pa mogu da nastanu problemi u određenim situacijama. Ako baš hoćeš da koristiš mogućnosti ugrađene u Apache moja preporuka je da koristiš
DefaultType direktivu ili eventualno da porazmisliš o
Redirect odnosno
RedirectMatch koje su recimo mnogo zahvalnije za definisanje jednostavnih redirekcija (ovaj tvoj primer bi verovatno bio idealan). Ako te ne uspe
mod_rewrite je neka poslednja alternativa za preusmeravanje.