我正在從DB創建頁面鏈接,如下例所示。來自數據庫的漂亮網址
當前頁:
www.example.com/page.php?pid=7
在DB它保存爲標題爲 「接觸我們」 類別下 「公司信息」
我希望它是這樣的:
www.example.com/company-info/contact-us.html
我已經嘗試了不同的解決方案和答案,但沒有得到任何運氣。我不確定,PHP部分在哪裏以及爲.htaccess文件編寫哪些規則。
我正在從DB創建頁面鏈接,如下例所示。來自數據庫的漂亮網址
當前頁:
www.example.com/page.php?pid=7
在DB它保存爲標題爲 「接觸我們」 類別下 「公司信息」
我希望它是這樣的:
www.example.com/company-info/contact-us.html
我已經嘗試了不同的解決方案和答案,但沒有得到任何運氣。我不確定,PHP部分在哪裏以及爲.htaccess文件編寫哪些規則。
如果你想通過url找到這個頁面,你可能會通過php和.htaccess來做到這一點。爲每個請求創建一個調用page.php
的.htaccess。您不需要pid=7
,因爲,.htaccess應該如何知道它是7,對不對? :)
在page.php中,您將原始網址並將其拆分到斜槓上,以便獲得類別(company-info
)和頁面本身(contact-us.html
)。然後,你可以在數據庫中查看這些。簡而言之,包括維基百科(MediaWiki)和CodeIgnitor在內的許多軟件是如何工作的。
請注意,「公司信息」與「公司信息」不同。您必須在數據庫中指定url版本才能使用它進行查找。
在阿帕奇(或.hataccess)做這樣的事情:所以簡而言之
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /proxy.php?_url=$1 [QSA,L]
,如果被請求的資源好好嘗試一下存在,它重定向到一個proxy.php文件。從那裏$ _REQUEST ['_ url']將是用戶請求的網址。
然後在您的主目錄中創建proxy.php並添加您想要加載正確內容的任何邏輯。
如果你使用.htaccess這個,你可能需要添加RewriteBase /到你的配置。