Index.php için pagerequests Rewrite, app / webroot dizinine filerequests

0 Cevap php

Hey, ben uzun bir süre için StackOverflow.com okuma ama bir soru sormak için kaydolmak için karar oldum. Ben kendi hafif MVC framework yazıyorum index.php yolları sayfa istekleri.

Sayfa istekleri / controller/action/arg1/arg2/arg3 gibi bakmak, ve onlar? Rota = [istek] index.php yeniden yazılması gerekir. Yani, site.com/user/profile/123 gibi [istek] index.php yeniden yazılması gerekir? Rota = user/profile/123

Ancak, dosya index.php için yeniden yazmak demek değildir. Bu tür görüntüler ve stil gibi varlıklar / app / webroot / klasöründe, ve yürütülecek PHP gerekmez. Yani, motor mod_rewrite / app / webroot / herhangi filerequests yeniden ve dosya yoksa zaman yapılandırılmış 404 ErrorDocument hizmet etmelidir.

Directory structure

  • . / Index.php
  • . / App / webroot / scripts / yardımcıları / hamster.js
  • . / App / webroot / images / logo.png
  • . / App / webroot / style / main.css

Eğer bir dosya isteği (/ squirrel.png) ve sadece dosya uzantısı / noktanın varlığı ile bir sayfa isteği (/ user/profile/123) arasındaki farkı söyleyebilir beri, ben bu gerçekten kolay olacağını bekliyordum. Ama ... ben onunla gerçekten zor bir zaman yaşıyorum ve ben birisi bana yardımcı olabilir umuyordum.

Ben denedim bir şey oldu ...

YenidenYazmaMotoru On

RewriteCond% {} REQUEST_FILENAME!-F

RewriteCond% {} REQUEST_FILENAME!-D

RewriteRule ^ (. *) $ App / webroot / $ 1 [L]

RewriteRule ^ (. *) $ Index.php? Rota = $ 1 [QSA, L]

... Ama gerçekten varolan dosyaları doğru yönlendirme dışında çalışmıyor. Pagerequests veya varolmayan dosyaları HTTP 500 hataları neden.

Herhangi bir yardım büyük beğeni topluyor! =)

0 Cevap