我已將我的網站的所有代碼存儲在我的文檔根目錄中mywebfolder
。有許多子目錄,例如mywebfolder/deals/..
mywebfolder/user/..
等。我目前正在通過mydomain.com託管我的網站。Mod_Rewrite最簡單的方法來隱藏所有子目錄的URL中的文件夾
我不想在任何時候顯示mywebfolder
,因爲它是多餘的,使我的URL不必要的時間更長,也更難記住。我有一個mod_rewrite運行,完成了這一點,但只有當我去mydomain.com。 (即只適用於文檔根目錄)。在我的000-default.conf文件我有以下幾點:
RewriteEngine On
<Directory "/var/www/html">
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
AuthType Basic
AuthName "Restricted Content"
AuthUserFile /etc/apache2/.htpasswd
Require valid-user
RewriteCond %{HTTP_HOST} ^mydomain\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.mydomain\.com$
RewriteCond %{REQUEST_URI} !^/mywebfolder/
RewriteRule(.*) /mywebfolder/$1
</Directory>
據我所知,我的條件只能做重寫,當我瀏覽到mydomain.com。無論如何,我可以很容易地推斷這些到整個網站,所以當瀏覽用戶從未在URL中看到/mywebfolder/
?或者我必須爲每個目錄創建一個目錄塊?
你的.conf似乎罰款,這是不清楚預期的是行不通的。你能舉出完整的URL地址嗎? –
@DusanBajic這隻適用於當我第一次去我的域名。因此,我導航到www.mydomain.com',它會轉到我的啓動頁面,該頁面位於目錄mydomain.com/mywebfolder/,並正確顯示,而不顯示URL中的myweb文件夾。但是,只要我點擊任何鏈接並進入更深的子文件夾,就會顯示mywebfolder。因此,例如,我點擊了我的初始頁面上的鏈接,它將我帶到mydomain.com/mywebfolder/subdirectory/mypage.php。但我希望它顯示:mydomain.com/subdirectory/mypage.php。有沒有辦法做到這一點?謝謝! – chaseshak
是的,我現在看到它。這是可能的,但讓我先測試它。 –