2011-07-18 79 views
1

我正在嘗試爲我正在處理的網站項目設計文件夾結構。很多網站的這些天似乎有下面的鏈接結構:如何使網站中的網址僅顯示爲文件夾

www.example.com/news/news-item-one/ www.example.com/about-us/

我可以我的網站是這樣工作的,沒有爲每個頁面創建一個新文件夾,並在其中放置一個index.php文件?

即www.example.com/news/new-item-one.php讀取www.example.com/news/news-item-one/

回答

1

是的,但是這取決於你正在運行的服務器。

如果是Apache,最常見的方法之一是創建.htaccess文件並使用重寫規則來聲明您的網站使用的不同路由。

下面是一個非常簡單的例子,雖然不一定是最好的方法。有些事情可以使它更靈活,但我相信它不在這個問題的範圍之內。對於它的價值,我更喜歡一個將路由處理傳遞給我的框架的全線路由。

<IfModule mod_rewrite.c> 
    RewriteEngine On 
    RewriteRule ^news/(.*)$ news.php?item=$1 [NC,L,QSA] 
    RewriteRule ^about-us/$ about-us.php [NC,L,QSA] 
</IfModule> 
0

你想使用htaccess。

創建在根目錄下一個名爲的.htaccess有以下

Options +FollowSymlinks 
RewriteEngine on 
RewriteRule ^(.*)$ $1.php [NC] 
0

以下mod_rewrite的代碼(把你的Apache配置)將允許您隱藏你有你的網站的任何頁面的PHP擴展。

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME}.php -f 
RewriteCond %{REQUEST_URI} !\.php$ 
RewriteRule ^(.*)$ $1.php [L] 

它檢查,以確保自己是不是一個文件或目錄本身,那麼,它的名字後面加上.PHP實際上是一個文件,它提供的是代替。

所以,如果你的網站上有一個/page.php,去/ page將和去/page.php相同。

相關問題