1
我想將所有請求重定向到我的服務器(/ app)上的某個路徑到/ app/app_site的子目錄。以下重寫規則對於像'http://localhost/app/somepage.htm的要求做的工作:重定向到子文件夾時始終保留URL
RewriteCond %{REQUEST_URI} !^/app/app_site.*$
RewriteCond %{REQUEST_URI} !^/app_site.*$
RewriteRule ^/app(.*) /app/app_site$1 [L,PT]
這導致正確的頁面,同時保留URL。此外,'http://localhost/app/'將在/app/app_site/index.html獲取索引頁,同時保留網址'http://localhost/app/'。
然而,當我輸入 'http://localhost/app',下面的事情發生:
- 正確的頁面被取出,在/app/app_site/index.html但
- ,該網址被重定向到「http://localhost/app/app_site/ '
我快到了,但想在所有情況下保留URL(也包括沒有結尾的斜線)。任何人都有線索如何做到這一點?謝謝!
完美,萬分感謝!這個例子的作用就像一個魅力。但是,我的真實應用仍然存在問題。我簡化了這個例子,但實際上,/ app是一個通過Tomcat通過mod_jk提供的Cocoon應用程序。現在,無論何時激活mod_jk指令,「http:// localhost/app」和「http:// localhost/app /」都會被重寫爲「http:// localhost/app/app_site /」(所有包含更多路徑的URL儘管如此)。你碰巧知道是什麼原因造成這種干擾以及如何解決它? – rvdb 2010-07-20 19:48:39
從用戶瀏覽器中URL更改的意義上講,它們被重寫了嗎?你如何定義你的'mod_jk'處理程序? – 2010-07-20 23:15:28
嗨蒂姆,我已經調查過這個問題,並被你的答案放在了正確的軌道上。我沒有爲mod_jk處理程序配置特殊選項;只有一條規則:/ app |/* = ajp13。 我意識到我的繭應用的sitemap.xmap也指定了一個重定向,以便在請求空路徑('/ app /')時提供默認主頁: