額外的單詞添加到URL我有一個網址,像這樣的應用程序:我如何使用mod_rewrite
https://www.domain.com/example/public/subscription
https://www.domain.com/example/public/subscription/source
https://www.domain.com/example/public/test/subscription
我想使用mod_rewrite(或其他方法)來創建更短的「別名「通過去除/public/
部分上述的URL,這樣我可以提供我的客戶與這些較短的版本的網址:
https://www.domain.com/example/subscription
https://www.domain.com/example/subscription/source
https://www.domain.com/example/test/subscription
換句話說,瀏覽到https://www.domain.com/example/subscription
時,例如:
- 打開時
https://www.domain.com/example/public/subscription
直接 - 瀏覽器必須仍然顯示在地址欄的短版的URL(不
/public/
)
是服務器必須發回相同的響應是一個將得到這甚至可能,以及這樣一個RewriteRule將如何?
預先感謝您。
我想我失去了一些東西人在這裏。該網站的DocumentRoot是/ var/www/domain/example,我的.htaccess文件位於示例/目錄中。現在,我甚至無法得到像下面這樣簡單的規則:'RewriteRule^/(。*)http://www.google.com [R]'。這應該將「https:// www.domain.com/example/public/test/subscription」的請求重定向到Google,對嗎?相反,我得到了404。 – Xhantar 2012-02-15 10:38:51
@Xhantar如果你的'DocumentRoot'是'/ var/www/domain/example',你的URL應該是這樣的:'https://www.domain.com/public/test/訂閱「不是'https:// www.domain.com/example/public/test/subscription'。例如/ public/test/subscription你的'httpd'服務器正在嘗試訪問 '/ var/www/domain/example // http:// www.domain.com/example/public/subscription'。 – ThinkingMonkey 2012-02-15 11:06:46
@ThinkinMonkey - 好,我現在看到我的錯誤。我在正確的軌道上使用了實際的RewriteRule,但是我的DocumentRoot被設置爲的路徑,所導致的基本URL以及我的.htaccess文件的物理位置都是我不太瞭解的因素。現在解決並工作;非常感謝你! – Xhantar 2012-02-15 12:09:01