2010-09-13 117 views
0

我正在一個門戶網站(PHP/MYSQL),它有3個部分的照片,視頻,文章。每個部分都有自己的提交表單,用戶可以使用該表單提交與其賬戶相對應的照片,視頻或文章。組織網址項目的最佳方式是什麼?

所以,這是我認爲網址應像

同爲視頻和文章的部分。現在我很困惑這裏使用什麼。

  • 我應該使用.htaccess創建這種類型的URL嗎?
  • 或者我應該使用index.php文件夾作爲/ photos /或/ photos/browse /這樣的文件夾。所有的文件夾將有index.php,所以他們將被文件夾名稱訪問和URL將看起來像這樣http://example.com/photos/browse/
  • 或者我應該去傳統,並使用photos.php和browse-photos.php。但是這種方法看起來不太好和有組織。

我可以很容易地通過htaccess實現這一點,但有些人說它會減慢你的網站,因爲它會在每次請求URL時處理htaccess。

我還有一個問題,網站如digg,flickr如何做這個URL形成。這些網站每天都有數百萬的頁面瀏覽量,所以他們不使用htaccess?

請指導我!

謝謝。

+1

.htaccess文件不用於「創建」這樣的URL,而是用於將這些URL映射到現有文件的規則。但.htaccess文件並不是唯一放置這些規則的地方。它們僅僅是Apache Web服務器的手段,以允許按目錄配置,而不是按每個服務器或每個虛擬主機配置。 – Gumbo 2010-09-13 11:58:33

回答

1

我可以很容易地通過htaccess實現這一點,但有些人說它會放慢速度您的網站,因爲它會在每次請求URL時處理htaccess。

對於流量非常非常高的站點,確實很重要的一點是,不會有太多基於正則表達式的重寫規則,因爲它們有點性能強烈。

雖然我們大多數人並不需要擔心。去用Apache吧。

1

.htaccess最有可能不會是你的瓶頸,如果你需要真正的高性能,你不會在問題出現的時候自我測量。真的很大的網站不是一個很好的參考,在這個規模上的問題是非常不同的。

最靈活和最常見的方式是使用mod_rewrite重定向到一個頁面,然後調用應用程序的相應部分。

我不會擔心在這一點上的表現,但更多關於靈活性和可維護性。

你也可以把你的重寫規則在Apache的主配置並保存的.htaccess的開銷,這應該是一個快一點

3

可以使用(對於其它Web服務器或類似)的.htaccess和Apache的mod_rewrite爲了這。使用mod_rewrite,您將重寫傳入的URL以適應您的腳本架構。放緩可以忽略不計。大多數大網站都使用這種技巧。

因此,對於一個粗略的例子,假設你有以下工作程序:

./index.php 
./index.php?section=about 
./index.php?section=contact 
./index.php?section=help 
./photos.php 
./photos.php?section=browse 
./photos.php?section=submit 
./photos.php?section=edit 

然後你就可以把這個在.htaccess

# Turn on URL rewriting 
RewriteEngine On 

# These are very verbose to show the point. Later you can make them smarter 
RewriteRule about index.php?section=about 
RewriteRule contact index.php?section=contact 

#all under photos/* goes to photos.php 
RewriteRule photos/(.*) photos.php?section=$1 

,然後將你的代碼在正確的地方在index.php和photos.php

1

使用htaccess將使組織文件比使用大量文件夾簡單得多。是的,它對性能有影響,但除非它是一個真正高流量的站點,否則其影響不會顯着。您擔心的是性能,請記住,糟糕的代碼可能比任何重寫規則都要慢很多。

相關問題