2013-07-10 65 views
0

我的網站目前沒有SSL/https設置。現在我需要實現一項功能,以便我的移動應用程序可以與我的服務器通話。我只需要https即可。第三方https轉發?

將我的網站更改爲全部https似乎工作太多,單條路線。

在我瘋狂的想象中,是否會有第三方服務提供https處理程序,以便我的移動應用程序可以安全地傳遞信息。然後第三方服務使用我的密鑰對這些信息進行加密,然後使用標準http將它們傳遞迴我的服務器?

上面我的想象服務有什麼問題?這樣的事情已經存在嗎?

回答

0

你不需要在你的整個網站上啓用ssl。您可以使用.htaccess文件

啓用它爲特定的網頁試試這個

如果您熟悉的mod_rewrite和正則表達式一點點,你應該沒有問題,閱讀這些規則 - 評論都存在解釋什麼特定的規則呢。其餘的 - 正則表達式基礎:

Options +FollowSymLinks -MultiViews 
RewriteEngine On 
RewriteBase/

# force https for /login.php and /register.php 
RewriteCond %{HTTPS} =off 
RewriteRule ^(login|register)\.php$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L] 

# don't do anything for images/css/js (leave protocol as is) 
RewriteRule \.(gif|jpe?g|png|css|js)$ - [NC,L] 

# force http for all other URLs 
RewriteCond %{HTTPS} =on 
RewriteCond %{REQUEST_URI} !^/(login|register)\.php$ 
RewriteRule .* http://%{HTTP_HOST}%{REQUEST_URI} [R=301,L] 

這些規則需要放置在.htaccess在網站根文件夾之前的任何其它重寫規則(如果這樣存在)。如果放置在其他地方可能需要一些小的調整。

他們將迫使HTTPS的/login.php和/register.php,什麼也不做圖片,CSS樣式和JavaScript文件(準確地說,與這些擴展名的文件),並會強制HTTP的其他所有網址

您可以輕鬆地添加其他URL到列表 - 只需編輯通過添加額外的文件名列表(在兩個地方相同的文字:1)現有的規則,迫使2)排除)

文件名是區分-敏感。因此,如果請求/LOGIN.php,那麼這些規則將不起作用(Apache也不會提供它,因爲Linux是區分大小寫的操作系統..所以這裏不需要太擔心)。

明顯的事情:應該啓用mod_rewrite,而.htaccess文件需要由Apache處理(某些網站託管公司爲了性能和安全原因禁用它們)。

+0

謝謝,但它不回答我的問題。 – lulalala

+0

我在谷歌搜索,沒有這樣的第三方服務處理ssl。基本上它的反安全性。如果你可以創建一個,可能會對其他人有所幫助,但沒有人可以正確使用這種配置。 –

0

沒有TLS轉發服務,並且永遠不會有。原因是它會擊敗TLS的所有目的。

基本上,TLS保證客戶正在與其認爲的服務器交談,並且沒有人可以竊聽或篡改通信。如果假設的TLS代理以純文本格式將通信轉發給其他服務器,則所有這些保證都將丟失。

+0

在我的問題中,我確實指定了轉發的通信要加密。因此,你在第二段中提到的內容被我的假想服務所覆蓋。 – lulalala

+0

我很確定配置TLS涉及的工作量要少於提出並實現自己的加密協議。如果你想解決TLS所做的一切,你將最終得到與TLS非常相似的東西,除非你的協議是非標準的。 – ntoskrnl