2012-07-14 19 views
-2

我想做一個動態頁面,將顯示基於URL的內容,但我想知道是否有可能使URL更易於閱讀用戶。我怎樣才能讓一個漂亮的URL,但仍然獲得數據與PHP

所以我有一個名爲work.php的頁面,它將根據URL中傳遞的ID顯示一段特定的工作。 ?所以work.php項目= 1將顯示項目1

有沒有辦法使用URL更像www.website.com/work/projectname

+0

@Radu好笑話,哈哈:) – 2012-07-14 11:38:07

+0

當然,但問題是你運行哪個具體問題來編寫代碼? – hakre 2012-07-14 11:38:12

+0

感謝您的有用答案@radu,我一直在尋找的是一個關鍵字,以進一步研究它。 mod_rewrite會是完美的。但你的回答也很好。 – alsweet 2012-07-14 11:48:30

回答

1

看看這個以達到同樣的效果:.htaccess and mod_rewrite爲Apache

然後你可以處理它矗立在$_SERVER['REQUEST_URI']

** **增編

例如我使用這樣的事情在.htacess文件的URL:

Options +FollowSymLinks 
IndexIgnore */* 
# Turn on the RewriteEngine 
RewriteEngine On 
RewriteBase/
# Rules 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . index.php 

於是我將永遠降落在index.php在那裏我將解析URI和可以使用它作爲一個分配器和路由器,我的網頁。

0

您必須創建一個名爲.htaccess的文件(沒有更多,沒有什麼)。 將此文件放在與網站其他文件相同的文件夾中。您可能必須打開「顯示隱藏文件」才能在創建文件時查看該文件。

在.htaccess,你可以這樣寫:

RewriteEngine敘述上 重寫規則^工作/(A-ZA-Z0-9 _-] +)$ work.php產品= $ 1

此代碼?會給你的工作/ 1

1

你可以看看Apache重寫如何工作,如果這隻適用於特定的腳本或兩個,然後將使其顯示爲www.website.com/work/projectname和後端行爲就好像它是work.php?project = 1

Here is an example: 
# Turn on URL rewriting 
RewriteEngine On 
RewriteBase/
RedirectRule ^work.php?project=(.*) http://www.website.com/work/$1 

如果這將是一個項目與一堆這些網頁,你不想寫一堆這些規則,我建議你看看一個MVC框架,如Kohana,Yii等關心這一點以及許多其他的事情。

相關問題