首先,我想告訴你這是我的第一篇關於堆棧溢出的文章,所以如果我做錯了,我也想讓我知道它。從url隱藏子文件夾
我想構建一個包含控制器和模板文件夾的PHP腳本。兩者都重定向和包含 - 要求PHP文件在其中的一個或另一個。所有內容都可以通過根域目錄上的索引訪問。所以我的問題是我怎麼能隱藏的網址,即domain.com/"controller"/activate.php
或domain.com/"templates"/login.php
。
我讓你知道,我通過索引中的某些參數(if
)在「模板」文件夾中包含login.php
。
我現在將發佈我的.htaccess
,以便您可以查看該過程,而我已經嘗試過去隱藏「模板」文件夾。但是,然後通過在.htaccess上編碼,子目錄不再可用。這就是爲什麼我不得不刪除代碼在這裏發佈,因爲這些代碼不解決我的情況。
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase/
ErrorDocument 404 /templates/404
# To externally redirect /dir/abc.php to /dir/abc
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+(.+?)\.php[\s?] [NC]
RewriteRule^/%1 [R=301,L,NE]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.+?)/?$ $1.php [QSA,NC,L]
</IfModule>
AddOutputFilterByType DEFLATE文本/文本的text/html文本/純文本/ XML文本/ CSS應用程序/ x-JavaScript應用/ JavaScript的
直到現在我的.htaccess有參數在url和cache-Gzip壓縮方法上隱藏.php擴展名。所有的幫助將感激,錯誤和正確的!
這不完全是我的意思。爲了幫助你更多,我將給你提供文件夾的細節以及它的工作原理。所以: –
根域目錄httpd主機: **資產**(包含js,css,img,文件夾內的文件夾) **控制器**(包含具有類,函數和db連接的php文件的文件夾他們) **語言**(包含php文件的文件夾,它檢查區域和決定哪個php文件讀取詞彙表數組) **模板**(包含php文件的文件夾,如登錄,激活等) **。htaccess **(包含您在上面看到的特定代碼的文件) ** index **(包含登錄php文件的php文件,位於模板文件夾內)' –
假設我們有索引調用login.php和profil.php(如果語句正確)。因此,網址將首先顯示domain.com,然後如果該語句爲true,則會重定向到profil,url將在domain.com/templates/profil.php中更改。所以我在兩個方法的中間如何調用和正確顯示頁面: 1)使用.htaccess以某種方式照顧並隱藏子文件夾。 2)通過在控制器文件夾中使用帶有函數和類的php文件,在索引中顯示所有內容,如果語句正確並且url爲domain.com/something.php –