2012-04-03 116 views
0

我有一個網站爲所有內容生成動態網址。動態網址+ SEO

它使用一個函數來顯示index.php頁面上的內容,它被「action」調用。

所以,如果用戶想要註冊,有一個註冊函數調用它。 如果用戶想要瀏覽下載頁面,有一個函數調用它。

事情是這樣的:

index.php?action=signup 
index.php?action=downloads 
index.php?action=news&type=type&id=id 

在最後一種情況是新聞。 該消息除以類型ID,這兩個數字。

類型可以是:文章,更新等

我的問題是:如何以及什麼,我必須爲了改造這一切友好的網址嗎?

回答

1

假設你在apache服務器上,你會想要使用.htaccess文件和使用規則重寫URL的方法,這並不令人驚訝地被稱爲RewriteRule。

有一個ton通過谷歌的信息,如果你搜索.htaccess重寫規則,但一個很好的出發點是http://corz.org/serv/tricks/htaccess2.php

您將基本結束通過把一個名爲的.htaccess在公開的網頁文件夾的文件,像這樣的東西:

Options +FollowSymlinks 
RewriteEngine on 
RewriteRule ^(?:/(.*)){1,3} index.php?action=$1&type=$2&id=$3 [R,NC] 

注:我沒有測試上面,它會根據不同的你想如何讓你漂亮的鏈接看起來。

+0

恩......謝謝你的回答,但這不完全是我需要的。 隨着一些重寫規則,我可以使「/註冊」可用,但它是不夠的,因爲我需要手動更新鏈接。 也許你可以幫助我找出我真正需要的東西。 問題 當前URL:url.com/index.php?action=signup 所需的URL:url.com/register 如何讓我的網站顯示「/註冊」爲紐帶,不僅作爲一個可能的路徑? 我的意思是,當我的網站生成動態鏈接時,它不尊重SEO規則。 如何使其尊重搜索引擎優化? 如何讓它生成「/ register」而不是「/index.php?action=signup」? – Darkeden 2012-04-07 00:36:09

+0

我認爲它確實如此 - 但您需要添加額外功能,例如301重定向。你需要的所有信息都在我發佈的頁面中,但是在規則的末尾,它會是這樣的:[R,301],因此只能從該位置訪問,以避免重複。 – LeonardChallis 2012-04-07 08:31:04

+0

謝謝。 我現在可以瞭解我需要什麼,所以現在我只需要實施。 幫我寫了兩個重寫規則: 第一 - url.com/index.php?action=signup(** url.com /註冊**) 二 - url.com/index.php?action=news&id= $ id&title = $ title(** url。com/news/$ id/title-of-the-notice-with-hifens **) Hifens會來自PHP函數還是重寫規則? 如何解決這些dirs後的CSS問題? 每條規則將如何? – Darkeden 2012-04-10 15:55:56