2013-02-14 139 views
3

我是一名大學生,除80,443之外的所有端口都被阻止。我能夠通過使用端口443連接到Heroku

Host github.com                      
    Hostname ssh.github.com 
    Port 443 

git push heroku master連接到github上給我這個錯誤:

ssh: connect to host heroku.com port 22: Connection refused 
fatal: The remote end hung up unexpectedly 

我試過在如此張貼here的解決方案,不過我還是沒有得到它的工作。有沒有一種方法可以連接到heroku部署我的網站?

非常感謝

+0

你同時修改你的.ssh /配置和您的.git/config中所描述的[這裏](HTTP: //stackoverflow.com/a/11158724/28037)?修改後會得到什麼錯誤信息? – culix 2013-02-17 23:28:49

回答

4

如果你的SSH端口被封鎖,並希望使用備用端口推入Heroku的,那麼你可以考慮隧道

對於隧道,你需要有額外的PC或服務器所在網絡堵塞之外,且能夠訪問端口22

對於場景下面我們可以用房子的PC隧道進入Heroku的服務器。由於校園網只允許80和443端口,我們可以設置衆議院接收上位機通過443端口和隧道與之連接到端口22

在樓郵編:

  1. 配置SSH服務器家裏的PC上運行的端口443 Refer here to configure SSH Server on Multiple Ports

大學郵編:

  1. 配置PC大學解決git_tunnel別名指向本地主機端口9001。編輯~/.ssh/config,並添加以下

    # ~/.ssh/config 
    
    Host git_tunnel 
        Hostname 127.0.0.1 
        User git 
        Port 9001 
    
  2. 添加新的遠程別名tunnel這將指向[email protected]_tunnel:{app name}.git

    git remote add tunnel [email protected]_tunnel:{app name}.git

  3. 從大學PC建立隧道到住在443端口的電腦。

    ssh -L 9001:heroku.com:22 -p 443 [email protected]

  4. 使用創建別名tunnel

    部署到Heroku的早期

    git push tunnel master

+0

或者,您可以使用公共可用的VPN(例如https://hide.me/),並享用您想要的任何端口號碼。 – Azi 2016-06-06 00:52:37

7

Heroku的SSH只能通過端口22,然而,有,一個插件,可以讓你通過HTTP推。不過,它不使用git。相反,你heroku push

https://github.com/ddollar/heroku-push

+1

工程就像一個魅力! – mtsz 2014-03-29 11:11:36

相關問題