2011-06-14 54 views
0

我想重定向 http://testsite.com/campus.phphttp://testsite.com/campus.php 但文件campus.php不存在。它從數據庫中提取頁面內容,並且必須顯示它。 我沒有任何想法。顯示動態頁面htaccess的重定向

+0

也許我在讀這個錯,但看起來這兩個URL是一樣的。 – 2011-06-14 13:13:08

+0

請詳細說明。你的2個URL也是一樣的。花點時間寫下你的問題。 – 2011-06-14 13:13:50

+0

對不起,我的英文不好。兩個URL是相同的,但我想使用通用頁面顯示數據庫中的內容。所以頁面campus.php不存在。 – nithi 2011-06-14 13:35:15

回答

1

首先,你的兩個URL是相同的。

但是,如果您想調用實際不存在但從數據庫中提取的頁面,則通常會重定向URL的某些部分以指向用於訪問數據庫的$_GET變量。所有請求實際上都是index.php,而index.php處理數據庫並顯示正確的數據。

# Conisde this pseudocode 
# Rewrite somepage to index.php?pagename=somepage 
RewriteRule /somepage.php /index.php?pagename=somepage 


# The actual .htaccess rewrite looks like: 
RewriteEngine On 
# Assuming pagename is upper/lower letters and numbers only... 
RewriteRule /([A-Za-z0-9]+)\.php /index.php?pagename=$1 

現在在你的PHP,您使用$_GET['pagename'](校園你的情況,我認爲)來調用數據庫中的文本和顯示。

編輯我將\.php添加到RewriteRule。現在/campus.php重寫爲/index.php?pagename=campus

+0

您已理解實際問題。我使用了您的代碼,但發生了以下錯誤。在此服務器上未找到請求的URL /campus.php。 – nithi 2011-06-14 13:33:24

+0

@ user738026查看上面的修改。我將其改爲添加'.php'擴展名,它將把campus.php重寫爲'$ _GET ['campus']' – 2011-06-14 13:40:42