我一直有一個相當標準的Apache配置。現在我們正在引入一個新概念,用戶會話特定的URL將會改變事物。基本上我們有一個DocumentRoot和任何東西,如:apache mod_rewrite用戶的URL到index.php
http://example.com/
會擊中DocumentRoot
指令中的index.html。
但現在我希望能夠做到像
http://example.com/uid/5/
http://example.com/uid/2
那些仍然應該打的index.html在已設置DocumentRoot的。該URL主要用於服務器端和客戶端腳本,以便能夠執行自己的任務。
在Apache中處理這個問題的最好方法是什麼? mod_rewrite在這裏甚至是必要的嗎?
我還需要能夠支持以下如說現有路徑:
http://example.com/foo/bar/something.php
將被改寫,以http://example.com/uid/3/foo/bar/something.php
但正如前面仍然會打在文件系統中的同一位置。 >不變
http://example.com/uid/3/foo/bar/something.php - - >改寫爲/foo/bar/something.php?uid=3
編輯
http://example.com/foo/bar/something.php:無UID附加
你可能確實需要mod_rewrite。 「/ uid/3/foo/bar/something.php」實際上是否存在與所有實際目錄一樣的完整路徑? –
在DocumentRoot下的文件系統上存在'foo/bar/something.php'。 '/ uid/3'是我全面添加的'虛擬路徑'。注意:'foo/bar/something.php'默認已經有效。 – randombits