2013-12-22 72 views
1

我已經能夠使用makecert做一個自簽名的證書目前啓用HTTPS的所有目錄下用C啓用SSL:// XAMPP/htdocs目錄如何只在指定的XAMPP目錄

我有兩個目錄,其我想與衆不同,

c:/XAMPP/htdocs/PLACEHOLDER1 
c:/XAMPP/htdocs/PLACEHOLDER2 

我在想,如果它會是可能有SSL範圍僅限於一個目錄,說在這種情況下,「PLACEHOLDER1」。

這是我第一次使用SSL,所以很抱歉有任何混淆。

回答

3

http://robsnotebook.com/xampp-ssl-encrypt-passwords有關於如何使文件夾只能通過SSL加密訪問的一些很好的信息。它專門介紹這兩個項目,這不是一個直接的報價,但精華摘錄回答你的問題:

讓文件夾使用SSL加密只能訪問
首先,我們需要告知Apache的是,你想要加密的文件夾應該始終使用加密(並且永遠不要清除)。這是通過在配置文件中的每個所需列表中放入一個SSLRequireSSL指令來完成的(可以將它放在最後,就在這之前)。

Alias /web_folder_name "C:/xampp/foldername" 
<Directory "C:/xampp/foldername"> 
    ... 
    ... 
    SSLRequireSSL 
</Directory> 

重定向「HTTP」爲「https」對於特定文件
接下來的這個可選的步驟是重定向「HTTP」請求爲「https」,因爲我們要保護的頁面的請求。這更方便用戶使用,並允許您在輸入地址時仍然使用http(並自動切換到https://和加密)。如果您不這樣做,並且您使用了SSLRequireSSL,則只能通過鍵入https://來訪問這些頁面。這很好,可能會更安全一些,但不太方便用戶。爲了完成重定向,我們將使用mod_rewrite,以便我們不必在配置文件的這部分中使用服務器名稱。這有助於保持寫入服務器名稱的配置文件中的位置數量較少(使配置文件更易於維護)。

首先,我們需要確保啓用了mod_rewrite。要做到這一點,編輯C:\ XAMPP的\ apache的\的conf \ httpd.conf文件,並在該行擺脫評論(#字符)的:

的LoadModule rewrite_module模塊/ mod_rewrite.so
使它看起來像這樣:

的LoadModule rewrite_module模塊/ mod_rewrite.so 現在,下面的文本粘貼到C的頂部:\ XAMPP \ apache的\的conf \額外\的httpd-xampp.conf:

RewriteEngine敘述在

# Redirect /xampp folder to https 
RewriteCond %{HTTPS} !=on 
RewriteCond %{REQUEST_URI} xampp 
RewriteRule ^(.*) https://%{SERVER_NAME}$1 [R,L] 

# Redirect /phpMyAdmin folder to https 
RewriteCond %{HTTPS} !=on 
RewriteCond %{REQUEST_URI} phpmyadmin 
RewriteRule ^(.*) https://%{SERVER_NAME}$1 [R,L] 

# Redirect /security folder to https 
RewriteCond %{HTTPS} !=on 
RewriteCond %{REQUEST_URI} security 
RewriteRule ^(.*) https://%{SERVER_NAME}$1 [R,L] 

# Redirect /webalizer folder to https 
RewriteCond %{HTTPS} !=on 
RewriteCond %{REQUEST_URI} webalizer 
RewriteRule ^(.*) https://%{SERVER_NAME}$1 [R,L] 

如果你要重定向到https其他文件夾://,添加下面的通用文本(但替換您的文件夾名稱):

# Redirect /folder_name folder to https 
RewriteCond %{HTTPS} !=on 
RewriteCond %{REQUEST_URI} folder_name 
RewriteRule ^(.*) https://%{SERVER_NAME}$1 [R,L]