代码之家  ›  专栏  ›  技术社区  ›  AdmagTwoXray

rsync无法连接错误

  •  1
  • AdmagTwoXray  · 技术社区  · 7 年前

    我正在尝试使用rsync将文件与Travis和GitHub一起上传到我的服务器,我部署了这一行。sh脚本 rsync -avhP $f deploy@multicrew.co.uk:/var/www/test/ 每当我尝试上载$f文件时,都会出现以下错误:

    ssh: connect to host multicrew.co.uk port 22: Cannot assign requested address
    

    在我的范围内。特拉维斯。yml文件我有这个代码

    addons:
      ssh_known_hosts: multicrew.co.uk
    
    before_install:
      - openssl aes-256-cbc -K $encrypted_8c9513462553_key -iv $encrypted_8c9513462553_iv -in deploy/deploy_rsa.enc -out /tmp/deploy_rsa -d
      - eval "$(ssh-agent -s)"
      - chmod 600 /tmp/deploy_rsa
      - ssh-add /tmp/deploy_rsa
      - chmod +x deploy/deploy.sh
    
    after_success: "deploy/deploy.sh"
    

    我不知道为什么rsync无法分配请求的地址,我在CloudFlare中设置了一个A name记录,用于转发multicrew。co.uk到我的服务器的IP

    1 回复  |  直到 7 年前
        1
  •  2
  •   Phil Ross Matt Johnson-Pint    7 年前

    您收到的错误看起来是由未完成的 issue with IPv6 on Travis CI .

    然而,因为在撰写本文时,您的multicrew。co.uk域由Cloudflare代理,并且 Cloudflare only proxies HTTP traffic ,建议的禁用IPv6修复程序将不起作用。

    你需要 create a separate non-proxied (grey cloud) hostname 要与SSH/RSYNC一起使用,请更改RSYNC命令以直接连接到服务器IP地址,或禁用多视图的Cloudflare代理。co.uk主机名。

    请注意,在DNS中添加非代理主机名将公开服务器的IP地址。您可能希望仅将服务器上的访问权限限制为 Travis CI Cloudflare IP范围(例如,使用防火墙规则或在web服务器配置中)。