我在我的第一個笨的項目工作...笨 - 加載圖像,CSS,JS,視頻(網絡資源)到HTML
建立我的大多數PHP,並開始與基本完成股代息後打我意識到所有對application/views/
文件夾的訪問都被.htaccess
拒絕。
當我想要訪問頁面特定的JavaScript,圖像或任何Web資源文件夾時,這對我的文件結構來說是一個巨大的問題。由於我所有的views template
都假定文件在本地使用(即Page_name/images/cutedog.jpg
,在我的代碼中更精確地爲<img src="{images}cutedog.jpg">
)。
我找到的解決方案是修改.htacces,以便過濾掉所有媒體文件,並允許訪問我的應用程序文件夾。但是通過這樣做,我會揭示我寧願避免的文件結構。
我知道我可以將我的網絡資源放在我的應用程序文件夾之外,這樣可以解決問題。但爲了可維護性的目的,我認爲現在擁有一切就像是更多的邏輯。
所以我的問題是,在如下...什麼相關工作將您建議讓: - 我可以在application/views/issue/WEB_PAGE/Web-resource-folder
保持我的網絡資源 - 把我的文件結構隱藏 - 網絡資源可以訪問
我的.htaccess
Deny from all
<FilesMatch "\.(css|js|jpg|pdf|avi|mpg|robots\.txt|png|pdf|favicon\.ico)$">
Order allow,deny
Allow from all
</FilesMatch>
我的文件結構:
-+ /application/
|
|-+ /Typical CI folders/
|-+ /view/
|-+ /issue/
|-+ /1/
|-+ /page1/
|-+ /img/
|-+ /js/
|-+ /video/
|-+ /page2/
|-+ /img/
|-+ /js/
|-+ /video/
您永遠不需要直接訪問應用程序目錄。你的控制器,視圖和路線應該爲你處理所有這些。你可能誤解了CI的工作原理嗎? – monkeymatrix
Javascript和CSS資源可以放置在公共'腳本'或'CSS'目錄中,然後您只需修改核心配置文件.htaccess以確保它不會將這些文件夾的請求重寫到index.php。 – monkeymatrix
這是一個糟糕的設計。如果將資源放在應用程序文件夾之外,爲什麼你不能達到同樣的效果? – itachi