Version: 2020.2
配置
范围注册表身份验证

解决网络问题

使用这些过程来:

配置防火墙

确保 Unity Package Manager 可以使用 HTTPS 访问以下域名:

  • packages.unity.com
  • download.packages.unity.com
  • upm-cdn.unity.com(对于中国的地点,则是 upm-cdn-china.unitychina.cn)

将上述域名添加到防火墙的允许域列表中。

配置代理服务器

使用代理服务器时,请配置 Unity Package Manager 的 HTTP_PROXYHTTPS_PROXY 环境变量(用于针对 Unity 包注册表执行请求)。

您可以根据操作系统来全局设置这些变量(系统变量或用户变量)。或者,您可以仅为 Unity Hub 设置环境变量(在 Unity Hub 启动后)。

对于代理服务器之后的环境,要使用 Package Manager 无法识别的证书,您可以配置自定义证书颁发机构

自定义证书颁发机构

在某些公司和机构中,用户只能通过代理服务器访问互联网。有些代理会解压缩 HTTPS 内容,并使用自己的 SSL 证书重新打包这些内容。某些情况下,Unity Package Manager 的基础 HTTPS 层会拒绝这些证书,因为它无法识别发出这些证书的颁发机构,因此将该连接视为可能是中间人攻击。这意味着除非您配置其他 SSL 证书颁发机构以允许这些证书,否则您将无法在 Unity 中使用许多功能,包括 Package Manager。

要配置其他 SSL 证书颁发机构,请执行以下操作:

  1. 找到 upmconfig.toml 全局配置文件位置。如果该文件尚不存在,请创建一个空文本文件。

  2. 创建一个文本文件,其中包含一个或多个自定义证书颁发机构的证书。该文件应包含一个或多个 Privacy-Enhanced Mail (PEM) 格式的受信任证书。例如:

    -----BEGIN CERTIFICATE-----
    MIIC+zCCAeOgAwIBAgIJAO0U6hVJnbvjMA0GCSqGSIb3DQEBBQUAMBQxEjAQBgNV
    BAMMCWxvY2FsaG9zdDAeFw0xOTAzMTIwMTIxMzRaFw0yOTAzMDkwMTIxMzRaMBQx
    EjAQBgNVBAMMCWxvY2FsaG9zdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
    ggEBAKNh0EM7j57pXorGs5OHzlk9TYeUqITtXXdWfY1fbqRdj+a8qLNs4m/nDsDW
    KgibHYG3FUqIidjPL61DLQuWUPY9Zo+uQaccIe0E5wb+To9mwMlLuhMD6iCPFRpe
    jcDhNj4vG1RVARMO1jupeZqdb+xHBZqtmMJmtiDOBxt662Z4hvoH8mdqNEuSkozz
    HqXmcdigrTO37DspGRBx08GJlHFHUs7C+hYOsOdNjME3dH/8uihjKYiqQb1E12dN
    PNL7jYm3AZv+qUmDFM3BJE0hSmAP00GuTJxbe31Kh4e7N5/XSiLsnqwircOj/Hfi
    eWjtsoXbCNDIiWUQtXBeLD/BdvkCAwEAAaNQME4wHQYDVR0OBBYEFDFw8VDkgMne
    mDjgo+b1iaPfUkdVMB8GA1UdIwQYMBaAFDFw8VDkgMnemDjgo+b1iaPfUkdVMAwG
    A1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAFEjUWGz1r3xSsbwUJsRhbMc
    M7Jjf9/r833H7eq31mbl/JbXPnpo8IctMuWyw42ccMtgq7i+coQeKwvWnHtI5rhe
    vshEkIqNPAoCnpW5NLprYDDTG1PDEhv6FYpW8Alq65i03tptzaoHlH3sH+97E/h0
    qSYI7yNHWMC5u0r1DB0BR+lZsj6RnwWPySMSuXx5sSiKIS/HkkMVwwmxKa4ZwuwS
    LFwHSUdqk0lJK4b0mCwyTHNvYO1IDziE5EKwfuaKVgOa62iCHVahgIVa+een4EfS
    hCCr3M3cq11Mi+mnRi1scxxrOno4OEEChWg2szZLlxBrkVJllrrq620XJ6RLB/8=
    -----END CERTIFICATE-----
    -----BEGIN CERTIFICATE-----
    MIIDtzCCAp+gAwIBAgIQDOfg5RfYRv6P5WD8G/AwOTANBgkqhkiG9w0BAQUFADBl
    MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
    d3cuZGlnaWNlcnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJv
    b3QgQ0EwHhcNMDYxMTEwMDAwMDAwWhcNMzExMTEwMDAwMDAwWjBlMQswCQYDVQQG
    EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNl
    cnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3QgQ0EwggEi
    MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCtDhXO5EOAXLGH87dg+XESpa7c
    JpSIqvTO9SA5KFhgDPiA2qkVlTJhPLWxKISKityfCgyDF3qPkKyK53lTXDGEKvYP
    mDI2dsze3Tyoou9q+yHyUmHfnyDXH+Kx2f4YZNISW1/5WBg1vEfNoTb5a3/UsDg+
    wRvDjDPZ2C8Y/igPs6eD1sNuRMBhNZYW/lmci3Zt1/GiSw0r/wty2p5g0I6QNcZ4
    VYcgoc/lbQrISXwxmDNsIumH0DJaoroTghHtORedmTpyoeb6pNnVFzF1roV9Iq4/
    AUaG9ih5yLHa5FcXxH4cDrC0kqZWs72yl+2qp/C3xag/lRbQ/6GW6whfGHdPAgMB
    AAGjYzBhMA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQW
    BBRF66Kv9JLLgjEtUYunpyGd823IDzAfBgNVHSMEGDAWgBRF66Kv9JLLgjEtUYun
    pyGd823IDzANBgkqhkiG9w0BAQUFAAOCAQEAog683+Lt8ONyc3pklL/3cmbYMuRC
    dWKuh+vy1dneVrOfzM4UKLkNl2BcEkxY5NM9g0lFWJc1aRqoR+pWxnmrEthngYTf
    fwk8lOa4JiwgvT2zKIn3X/8i4peEH+ll74fg38FnSbNd67IJKusm7Xi+fT8r87cm
    NW1fiQG2SVufAQWbqz0lwcy2f8Lxb4bG+mRo64EtlOtCt/qMHt1i8b5QZ7dsvfPx
    H2sMNgcWfzd8qVttevESRmCD1ycEvkvOl77DZypoEd+A5wwzZr8TDRRu838fYxAe
    +o0bJW1sj6W3YQGx0qMmoRBxna3iw/nDmVG3KwcIzi7mULKn+gpFL6Lw8g==
    -----END CERTIFICATE-----
    
  3. 尽管 Unity 支持文件系统上的任何位置,请尽量将此文件与全局配置文件保存在同一个文件夹中。

  4. 在全局配置文件中,将 caFile 属性集添加到 PEM 文件的绝对文件路径。例如:

    caFile = "C:\\ProgramData\\Unity\\config\\cert.pem"
    

为 Unity Hub 设置环境变量

本节说明了如何创建一个可从 Windows 命令提示符macOS 或 Linux 终端运行的命令文件。或者,也可以将命令直接复制并粘贴到提示窗口或终端窗口中。

注意:在运行命令文件之前,请完全关闭 Hub。如果 Hub 正在运行,则脚本会将焦点切换到 Hub,而不会重新启动,因此不会应用更改的代理设置。

Windows

请按照以下说明在 Windows 上创建一个命令文件。

该文件将启动设置了环境变量的 Hub。您可以双击文件,也可以从命令提示符调用文件。Unity 将这些环境变量传递给从 Hub 启动的任何 Unity Editor 进程。

  1. 打开一个文本编辑器,如记事本。

  2. 输入以下文本,将 proxy-url 替换为正确的代理服务器 URL,并根据需要调整 Hub 安装路径:

    @echo off
    set HTTP_PROXY=proxy-url
    set HTTPS_PROXY=proxy-url
    start "" "C:\Program Files\Unity Hub\Unity Hub.exe"
    
    

    注意:如果路径中有空格,则必须在程序路径的两边使用双引号。

  3. 将文件保存到易于找到的位置(例如 Desktop),并确保文件具有 .cmd 后缀(例如 launchUnityHub.cmd)。

macOS

请按照以下说明在 macOS 上创建 launchUnityHub.command 文件。

该文件将启动设置了环境变量的 Hub。您可以双击文件,也可以从 Bash 终端调用文件。Unity 将这些环境变量传递给从 Hub 启动的任何 Unity Editor 进程。

注意:双击命令文件将打开一个终端窗口或选项卡,即使在脚本执行完毕后,这个窗口或选项卡也会保持打开状态。可以在 Terminal.app 的偏好设置中更改此行为。

  1. 打开终端窗口。

  2. 输入以下脚本,将 proxy-url 替换为正确的代理服务器 URL,并根据需要调整 Hub 安装路径:

    echo '#!/bin/bash
    export HTTP_PROXY=proxy-url
    export HTTPS_PROXY=proxy-url
    nohup "/Applications/Unity Hub.app/Contents/MacOS/Unity Hub" &>/dev/null &' > launchUnityHub.command
    chmod +x launchUnityHub.command
    

    注意:如果路径中有空格,则必须在程序路径的两边使用双引号。

  3. 如果愿意,可以将 launchUnityHub.command 文件移动到方便的位置(例如,Desktop)。


配置
范围注册表身份验证