![](/img/trans.png)
[英]Best way to implement page urls without creating pages (dynamic urls?)
[英]Is there a way to serve up web pages for URLs that don't have an actual backing page?
我很想知道是否有辦法讓PHP頁面或其他服務器端邏輯攔截URL,這樣如果查詢URL“www.mysite.com/about/mission_statement”但我沒有在“about / mission_statement”的頁面,我可以提供內容,例如“some / other / folder / with / pages”。
有人知道這是否可能,或者我是否必須確保我有一個頁面可用於我希望處理的每個網址?
您無法直接在PHP中執行此操作,因為調用PHP頁面以處理給定的URL,但您可以在Web服務器中執行此操作。
假設Apache看看URL重寫
http://httpd.apache.org/docs/2.2/rewrite/
特別是對於你的情況,副主題
http://httpd.apache.org/docs/2.2/rewrite/remapping.html
是相關的。
IIS具有類似的功能。
再次假設你使用Apache,那么你有很多選擇:
對特定頁面/內容使用重寫規則(如另一個答案中所指定),或在.htaccess文件中包含一行,將任何不存在的請求(404)重定向到您選擇的特定位置/文件。
這通常使用docroot目錄或其他所選目錄中的.htaccess文件中的以下代碼進行調用:
ErrorDocument 404 /whatever/path/to/file.php
如果您使用PHP鍵入的動態頁面,比如ID或其他動態值,則EG:
http://www.somedomain.com/page.php?id=4
然后,如果內容不匹配或存在,您需要創建一個重定向到您選擇的頁面的功能。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.