前言

自APJP更新到0.8.1,和以往的版本有著不同,把APJP分為

  1. APJP_REMOTE-x.x.x.zip
  2. APJP_REMOTE_APPENGINE-x.x.x.zip
  3. APJP_LOCAL-x.x.x.zip
  4. APJP_LOCAL_ANDROID-x.x.x.zip
  5. APJP_KEY-x.x.x.zip

這些文件合組成APJP全部,可以選擇搭建於PHP或GAE平台上。

組成APJP的文件簡介及部署

文件簡介

  1. APJP_REMOTE-0.8.2 為PHP主機平台上的服務器所需文件,裡面包含HTTP.php,HTTPS.php,HTTP.properties.php,HTTPS.properties.php和README.txt五個文件。
  2. APJP_REMOTE_APPENGINE-0.2.2 為部署在Google App Engine平台上的文件,裡面包含一個war目錄和README.txt,war目錄裡的WEB-INF目錄含有classes目錄,lib目 錄,appengine-web.xml,web.xml和logging.properties三個文件。(不熟悉命令行的,建議存放路徑 E:APJPAPJP_REMOTE_APPENGINE,下面示例要用)
  3. APJP_LOCAL 是電腦上(Linux/Windows/Mac)的客戶端,其中包含APJP.bat, APJP.sh, APJP.jar, APJP.properties, README.txt,APJP_UI.bat,APJP_UI.sh和APJP.png八個文件。
  4. APJP_LOCAL_ANDROID 是Android(安卓)移動系統(Tablet/mobile)的客戶端,有一個APJP_ANDROID.apk的安裝文件和README.txt。
  5. APJP_KEY 取代了以往的KEY.php和GAE的KEY文件,再不需要上傳訪問文件得到APJP所需鑰匙,改為在本地產生隨機的16位字符及數字組合,裡面包含APJP_KEY.bat,APJP_KEY.sh,APJP_KEY.jar和一個README.txt。

部署APJP服務器(PHP主機平台)

  • APJP部署到PHP主機,需要主機有如下條件:
    1. 支援PHP,版本需要是5.0.0 或以上
    2. 支援MCRYPT,版本需要是2.5.6 或以上
    3. 支援OpenSSL,版本需要是0.9.6 或以上

一般常見的Cpanel web hosting大多數會適合部署APJP的PHP服務器端,以下為部署方法,以Windows 7 為例,Linux/Mac用戶步驟相同,只需注意使用的文件對應系統。

一. 轉到APJP_KEY 目錄,執行APJP_KEY.bat,會顯示一個APJP的鑰匙,類似 APJP_KEY=FkPMd40j6vzfsEbf

二. 以文本編輯器,例如記事本(Notepad),Notepad2,或Notepad++等編輯APJP_REMOTE 目錄裡的HTTP.properties.phpHTTPS.properties.php, (右鍵,打開方式,選擇記事本打開)找尋

$APJP_KEY = '';

以上述的APJP鑰匙作為例子,修改為

$APJP_KEY = 'FkPMd40j6vzfsEbf';

儲存文件變更並離開。

三. 登錄Cpanel web hosting, 通常會提供一個file manager作為上傳文件的媒介,或者在本地使用ftp客戶端,把HTTP.php, HTTP.properties.php, HTTPS.php和HTTPS.properties.php上傳到主機的/public_html, 有些非Cpanel web hosting的主機可能提供ssh登錄,也可使用scp上傳文件,但目錄名字可能不是public_html,而是其他的目錄名字.例如www,可用以 下命令上傳.假設APJP_REMOTE在$HOME目錄cd ~/APJP_REMOTE ; scp HTTP.php user@host:~/www/ ,這樣就把文件上傳到主機。【免费PHP空间使用APJP搭建代理详细教程 http://igfw.tk/archives/5508

這就完成部署PHP主機平台上的服務器端,自APJP-0.8.0以後,已支援最多10個服務器,如果部署多於1個主機,除不需再執行APJP_KEY.bat之外,其它步驟相同,請使用同一個的APJP鑰匙。

部署APJP服務器(GAE平台)

  • Google Appication Engine是google提供的雲服務器主機,免費用戶最高可部署10個應用,每個應用每天可使用1Gb數據流量,限制文件上傳下載為1Mb, 支援JAVA及Python環境,搭建APJP於GAE平台,需要滿足如下條件:
    1. 需要一個gmail賑號,然後到 https://appengine.google.com 開通GAE免費服務(要驗證手機號,中國+86 1××××××××××)
    2. 開通後創建一個應用,該應用的網址為 http(s)://your-app-id.appspot.com,your-app-id是自行選取的名稱
    3. 下載Google 應用服務引擎 SDK並安裝,下載點為

http://code.google.com/intl/zh-TW/appengine/downloads.html

下載Java專用的Google應用服務引擎SDK,然後解壓,(不熟悉命令行的,建議存放路徑F:APJP_REMOTE_APPENGINE,下面示例要用)

一. 編輯E:APJP_REMOTE_APPENGINEwarWEB-INFappengine-web.xml 文件,(右鍵,編輯,即記事本編輯) 尋找

變更為

your-app-id

往下編輯,填入APJP_KEY.bat產生的鑰匙

變更為

儲存變更並離開。 二. 運行命令提示符,快捷鍵『Windows徽標鍵+R』彈出運行程序>輸入:“cmd”>

點擊:確定>彈出命令提示符

三. 轉到目錄JAVA SDK目錄下執行(如果上面兩處建議存放的文件路徑一樣的話,可以直接複製命令行,接著回車,一次一條)

F:
cd F:appengine-java-sdk-1.5.1bin
appcfg update  E:APJPAPJP_REMOTE_APPENGINEwar

該命令會自行上傳所需文件到GAE建立的應用上,過程中會提示輸入gmail賑號和密碼(有時干擾嚴重,要VPN才能上傳成功的,演示是一次成功的。)

成功後,和部署服務器到PHP主機一樣,可部署多於1個APJP應用,請重複前述步驟

由於在中國大陸訪問appengine.google.com可能會出現困難,請於本項目wiki裡的條目

設定電腦上的客戶端

  • 要使用APJP代理方案,仍需設定APJP在電腦系統上的客戶端,運行APJP客戶端,系統(Linux/Windows/Mac)需要安裝JAVA,版本1.6.0 或以上

 

下載地址http://www.java.com/en/download/chrome.jsp?locale=en

一. 假設APJP_LOCAL 在$HOME目錄,以文本編緝器編緝$HOME/APJP_LOCAL/APJP.properties

  1. 修改APJP_KEY= 為 APJP_KEY=FkPMd40j6vzfsEbf

這鑰匙和上傳到GAE或PHP平台服務器文件裡的鑰匙必需相同,否則不能正常工作。

2. 往下是兩項設定瀏覽器的User-Agent識別,共5項

  APJP_REQUEST_PROPERTY_KEY_X=
  APJP_REQUEST_PROPERTY_VALUE_X=

如有需要可改動,例如

  APJP_REQUEST_PROPERTY_KEY_1=User-Agent
  APJP_REQUEST_PROPERTY_VALUE_1=Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.4; en-US; rv:1.9.2.2) Gecko/20100316 Firefox/3.6.2

默認的 User-Agent 為 Java ,為免防火牆在頭文件檢測客戶端類形,改動這裡可把APJP偽裝成瀏覽器,把APJP發出的請求包裝成瀏覽器的請求,

如果設定了五個 User-Agent ,則每次請求的客戶端類形都不一樣,這樣可防止特別的客戶端頭文件被監聽引起封鎖,不想修改留空即可。

3. 再下來是本地代理端口和日誌設定,用作處理所有HTTP和HTTPS請求,設定如下

  APJP_LOCAL_PROXY_SERVER_ADDRESS=127.0.0.1
  APJP_LOCAL_PROXY_SERVER_PORT=10000
  APJP_LOCAL_PROXY_SERVER_LOGGER_LEVEL=2

如沒特別需要,可以跳過。

4. 往下為3個設定

  APJP_LOCAL_HTTP_PROXY_SERVER_ADDRESS=127.0.0.1
  APJP_LOCAL_HTTP_PROXY_SERVER_PORT=10080
  APJP_LOCAL_HTTP_PROXY_SERVER_LOGGER_LEVEL=2

這是程序和APJP本地的http通訊端口,如無特別需要,可使用默認設定。

5. 再往下2個

  APJP_LOCAL_HTTP_SERVER_ADDRESS=127.0.0.1
  APJP_LOCAL_HTTP_SERVER_PORT=11080

這兩項是設定服務器和客戶端的通訊端口,如無特別需要,使用默認即可。

6. APJP_LOCAL_HTTP_SERVER_URL_X= ,X是數字,由1~10,這是設定你的服務器位址,

例如:

   APJP_LOCAL_HTTP_SERVER_URL_1=http(s)://www.abc.com/HTTP.php

   APJP_LOCAL_HTTP_SERVER_URL_1=http(s)://your-appid.appspot.com/HTTP

如部署一個以上的服務器,請順序填入正確網址,APJP客戶端可以支援10個服務器,並可混合使用。

7. 再下來是

   APJP_LOCAL_HTTPS_PROXY_SERVER_ADDRESS=127.0.0.1
   APJP_LOCAL_HTTPS_PROXY_SERVER_PORT=10443
   APJP_LOCAL_HTTPS_PROXY_SERVER_LOGGER_LEVEL=2

這些是程序和本地客戶端的ssl連接通訊端口和日誌等級,無特別需要可用默認設定。

8. 往下是

  APJP_LOCAL_HTTPS_SERVER_ADDRESS=127.0.0.1
  APJP_LOCAL_HTTPS_SERVER_PORT=11443

服務器和客戶端以ssl連線的通訊端口,無特別需要可不設定,使用默認設定即可。

9. APJP_LOCAL_HTTPS_SERVER_URL_X= ,是用來設定ssl連線的服務器地址,和APJP_LOCAL_HTTP_SERVER_URL_X= 設定一樣,X數字由1~10,可設定10個服務器,

例如:

   APJP_LOCAL_HTTPS_SERVER_URL_1=http(s)://www.abc.com/HTTPS.php

   APJP_LOCAL_HTTPS_SERVER_URL_1=http(s)://your-appid.appspot.com/HTTPS

如多於一個GAE或PHP主機服務器,請順序寫入正確網址。

最后,10. 設定是

  APJP_HTTP_PROXY_SERVER_ADDRESS=
  APJP_HTTP_PROXY_SERVER_PORT=
  APJP_HTTP_PROXY_SERVER_USERNAME=
  APJP_HTTP_PROXY_SERVER_PASSWORD=
  APJP_HTTPS_PROXY_SERVER_ADDRESS=
  APJP_HTTPS_PROXY_SERVER_PORT=
  APJP_HTTPS_PROXY_SERVER_USERNAME=
  APJP_HTTPS_PROXY_SERVER_PASSWORD=

是用作設定代理連接APJP在GAE或PHP平台上的服務器,分為http和ssl連接,如需代理連接服務器,請在這裡設置,如無需要,留空即可。

二. 電腦上使用APJP_LOCAL配合Firefox, Google Chrome

執行APJP_LOCAL/APJP.bat, 會看到APJP在自行測試連接服務器的訊息,如果正常會有一連串的”OK”

這表示APJP已經運行並連上服務器,但需要在瀏覽器進行簡單設定,數據會經由APJP

服務器流通,在firefox 6裡,請在代理項裡的 http proxy設為 127.0.0.1,端口為10000

ssl proxy也是 127.0.0.1 端口10000,也可使用Autoproxy (https://addons.mozilla.org/en-US/firefox/addon/autoproxy/) 插件作選擇性使用代理,

Google Chrome建議使用插件SwitchySharp [项目Wiki地址https://code.google.com/p/switchysharp/wiki/SwitchySharp_GFW_List_2]

或 Proxy Switchy! 也可。Chrome Web Store地址 https://chrome.google.com/webstore/detail/caehdcpeofiiigpdhbabniblemipncjj?hl=zh-CN&hc=search&hcp=main 在HTTP Proxy設為127.0.0.1 端口

10000,HTTPS proxy設為 127.0.0.1 端口: 10000, 也可在Auto configuration Url

使用PAC文件作選擇性使用代理,請到http://autoproxy2pac.appspot.com 選其它->HTTP

->127.0.0.1->填入10000,可以使用網站地址或下載回來本地使用,例如使用在線網址,填入

http://autoproxy2pac.appspot.com/pac/proxy/127.0.0.1/10000 ,其他的瀏覽器

大約都是類似,請自行測試

設置Android(安桌)移動系統客戶端

APJP_ANDROID-0.1.0發佈以後,APJP開始支援安卓移動系統,包括tablet(平版電腦)和手機,

APJP_LOCAL_ANDROID-0.2.4現在和電腦系統上一樣,支援使用10個服務器,也是可混合使用

GAE或PHP主機平台上部署的服務器端,以下以安卓手機系統, Android 2.3.3, 手機為三星

Galaxy I9000,系統沒有root機,作為安裝示例

首先需把APJP_LOCAL_ANDROID/APJP_ANDROID.apk複制到手機的SD卡上,在手機裡點擊安裝,

或從安卓市場(Android Market)下載安裝, 以下為下載地址

https://market.android.com/details?id=APJP.ANDROID

完成後點擊運行APJP客戶端,點擊Preferences,出現一系列選項

a. 修改APJP_KEY, 輸入和服務器相同的鑰匙

b. APJP_LOCAL_PROXY_SERVER是作為本地代理,處理所有HTTP請求和HTTPS請求,

默認為127.0.0.1:10000,如無特別要求,使用默認即可

c. APJP_LOCAL_HTTP_PROXY_SERVER為本地代理的端口,默認是127.0.0.1:10080,如無

特別需要,可以不用改動

d. APJP_LOCAL_HTTP_SERVER 是遠端服務器和本地http通訊的端口,默認127.0.0.1:11080,

URL_X, X為支援的服務器數量,共10個,請輸入正確網址,例如

http(s)://www.abc.com/HTTP.php 或

http(s)://your-addid.appspot.com/HTTP

如服務器是1個以上,請順序輸入正確網址

e. APJP_LOCAL_HTTPS_PROXY_SERVER是本地代理端口,默認是127.0.0.1:10443

f. APJP_LOCAL_HTTPS_SERVER是遠端服務器和本地ssl通訊端口,默認127.0.0.1:11443

URL_X, X是支援服務器的數量,共10個,請輸入網址.例如

http(s)://www.abc.com/HTTPS.php 或

http(s)://your-addid.appspot.com/HTTPS

g. APJP_HTTP_PROXY_SERVER和APJP_HTTPS_PROXY_SERVER用來設置代理連接APJP

服務器,這裡和電腦系統上相同

到這裡APJP安卓移動系統客戶端已經設置完成,但仍需要一個能設置代理的安卓系統上的瀏覽器,

以從安卓市場安裝的Opera Mobile 11作為示例

a. Android Market(安卓電子市場)搜尋關鍵字 “Opera Mobile”,選中後從市場下載安裝

到手機裡

b. 啟動APJP,連接後會出現如下訊息:

APJP: START APJP_LOCAL_PROXY_SERVER

APJP: START APJP_LOCAL_PROXY_SERVER OK

APJP: TEST APJP_LOCAL_HTTP_SERVER

APJP: TEST APJP_LOCAL_HTTP_SERVER OK

APJP: TEST APJP_LOCAL_HTTPS_SERVER

APJP: TEST APJP_LOCAL_HTTPS_SERVER OK

這表示已成功連上APJP一個或以上的服務器

c. 啟動Opera Mobile 11, 在地址欄內鍵入 about:config

Opera Mobile的設定裡找到Proxy選項,點擊打開,找到HTTP server選項

修改為127.0.0.1:10000, HTTPS server選項修改為127.0.0.1:10000,

往下拉,找到 Use HTTP 和 Use HTTPS, 在空格裡打勾, 按”save”鍵儲存設置後回首頁,

訪問http://whatismyipaddress.com 查看是否服務器的IP,成功通過APJP訪問不會顯

示真實的IP,如在中國大陸使用,可訪問facebook,twitter和youtube等網站測試,如能正

常訪問,即表示正通過APJP代理連接互聯網.

補充

APJP為web tunnel的實現,對於https連接會出現證書警告,故在APJP_LOCAL-0.8.4

版本,增加IAIK_JCE.jar並會隨機生成證書,把證書APJP.pem導入瀏覽器內可解決證書警告

問題,以下為Windows 7版Google Chrome的導入方法

首先轉到APJP_LOCAL/目錄,執行 ./APJP.sh 或 ./APJP_UI.sh ,生成APJP.pem

a. 打開偏好設定 -> 進階選項 -> HTTPS/SSL

b. 點擊”管理憑證” -> 選”授權單位” -> 點擊”匯入”

c. 打開並指向APJP_LOCAL/APJP.pem

d. 憑證APJP代表憑證授權單位 ,有三個選項為

信任這個用於識別網站的憑證。

信任這個用於識別電子郵件使用者的憑證。

信任這個用於識別軟體製造商的憑證。

全部選取打勾.按確定,儲存並離開設定

e. 其他瀏覽器例如火狐(firefox)設置導入證書大致相同

f. APJP_LOCAL現在版本為0.8.6,如是從0.8.6以下版本更新,需要從新導入證書,返回a,b,但不

點擊”匯入”,從列表找到APJP,選中,刪除舊有的證書,點擊”匯入”,選APJP.pem,存儲離開

  • 關於圖形使用者介面

自APJP_LOCAL-0.8.5開始,本地客戶端加入圖形介面,方便一些對命令列不熟習的用戶,

以Linux為例,請在APJP_LOCAL目錄下執行chmod +x APJP.sh APJP_UI.sh, 使用圖形

介面請執行 ./APJP_UI.sh , 如果在shell腳本加入其它的shell來執行

例如 /bin/zsh, 在文件行首加入sha-bang #! /bin/zsh 而得到

zsh^M: bad interpreter no such file or directory ,原因是文件以DOS/Windows

格式存儲,以致出現錯誤,請執行以下命令:

tr -d ‘r’ < APJP_UI.sh > a ; mv -f a APJP_UI.sh ; chmod 755 APJP_UI.sh

重新執行./APJP_UI.sh即可

使用Windows的用戶可雙擊APJP_UI.bat或直接雙擊APJP.jar運行圖形介面,按start連接服

務器,不論Linux或Windows,雙擊桌面的工作列托盤圖標,就可進行隱藏/顯示APJP的圖形介面

建議/BUG提交

如果部署APJP代理方案有任何問題,或對APJP項目有任何建議,請訪問項目內的issue

發表,或者在twitter上向作者查詢,作者的twitter id: @jvansteirteghem

APJP代理專案為開源軟件(Open Source Software)

APJP Wiki下载: 『https://docs.google.com/document/d/1sY0F_IN6eEeAIMHLepAkm3pbytSMghkA7d3DF0CBknk/edit?hl=en_US&pli=1

可以以PDF,MS Word,Open Document,RFT,HTML,Plain Text等下载的。

原文http://code.google.com/p/apjp/wiki/InstallGuideForWin7

APJP项目地址:http://code.google.com/p/apjp/

本文由自动聚合程序取自网络,内容和观点不代表数字时代立场

定期获得翻墙信息?请电邮订阅数字时代