[英]Apache rewrite rule (url rewriting)
例如如何進行URL重寫,我希望我看起來像
www.myurl.com/study-abroad/what/ever/
如果我輸入
www.myurl.com/studyabroad/what/ever/
這個想法是出國留學而不是學習
如果您事先知道每個URL會遇到多少短划線,則可以執行此操作:
RewriteEngine On
# Replacing a single dash, e.g. example.com/study-abroad/what/ever
RewriteCond %{REQUEST_URI} ^([^-]*)-([^-]*)$
RewriteRule ^([^-]*)-([^-]*)$ $1$2 [L]
# Replacing two dashes, e.g. example.com/study-abroad/what-ever
RewriteCond %{REQUEST_URI} ^([^-]*)-([^-]*)-([^-]*)$
RewriteRule ^([^-]*)-([^-]*)-([^-]*)$ $1$2$3 [L]
......等等。 但是,我可以補充一點,這是因為設計破壞了,你應該重新考慮你的方法。
問候
對於這樣一個簡單的示例,我將使用mod_alias
重定向而不是mod_rewrite
。 例:
Redirect permanent /studyabroad http://www.myurl.com/study-abroad
有關完整的文檔,請參見http://httpd.apache.org/docs/2.0/mod/mod_alias.html#redirect 。
您需要將此(或類似的)代碼片段放入Apache配置文件中:如果啟用(並且您具有適當的權限),則它可能是網站目錄中的.htaccess
。 或者,您可以修改主Apache配置。 有關Apache配置文件的信息,請參見http://httpd.apache.org/docs/current/configuring.html 。
(編輯以反轉映射:添加破折號而不是刪除它)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.