Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Na první pohled
Cílem: Použití dev proxy serveru se subsystémem Windows pro Linux (WSL)
Čas: 15 minut
Požadavky:Nastavení dev proxy serveru, instalace WSL
Při vývoji aplikací ve WSL (Subsystém Windows pro Linux) máte dvě možnosti pro použití dev Proxy serveru: spuštění na hostiteli Windows nebo v rámci WSL. Oba přístupy mají své výhody v závislosti na pracovním postupu vývoje.
Možnost 1: Dev Proxy na hostiteli s Windows (doporučeno)
Nejjednodušším přístupem je instalace a spuštění Dev Proxy ve Windows. S automatickým proxy serverem WSL a zrcadleným síťovým režimem používá WSL Windows systémový proxy server, takže aplikace spuštěné ve WSL mají svůj provoz zachycený dev proxy serverem bez konfigurace proxy serveru ve WSL.
Konfigurujte síť WSL
Dev Proxy se registruje jako systémový proxy server Windows na adrese localhost (127.0.0.1:8000 ve výchozím nastavení). Aby aplikace ve WSL používaly tento proxy server, povolte následující nastavení v části [wsl2] konfiguračního souboru WSL umístěného v systému Windows v umístění %UserProfile%\.wslconfig:
[wsl2]
networkingMode=mirrored
autoProxy=true
| Setting | Description |
|---|---|
networkingMode=mirrored |
Zrcadlí síťová rozhraní Windows do Linuxu, což umožňuje aplikacím ve WSL připojit se k serverům běžícím na Windows, jako je Dev Proxy, pomocí 127.0.0.1. Vyžaduje Windows 11 verze 22H2 nebo novější. Výchozí hodnota je nat. |
autoProxy=true |
Používá WSL nastavení Windows proxy serveru HTTP, aby se proxy server nakonfigurovaný na Windows automaticky nastavil ve WSL. K dispozici v systému Windows 11. Ve výchozím nastavení povolena. |
Po změně souboru .wslconfig restartujte WSL, aby se změny projevily:
wsl --shutdown
Poznámka:
Ve výchozím režimu sítě NAT se aplikace ve WSL nemůžou připojit k Dev Proxy na Windows pomocí 127.0.0.1. Pokud nemůžete použít zrcadlený síťový režim, spusťte místo toho dev proxy server ve WSL. Další informace najdete v tématu Možnost 2: Dev Proxy uvnitř WSL.
Další informace naleznete v tématu Přístup k síťovým aplikacím pomocí WSL a konfigurace rozšířeného nastavení v WSL.
Nastavení vývojového proxy serveru ve Windows
Nainstalujte dev Proxy ve Windows pomocí wingetu nebo ruční instalace.
Spustit dev proxy:
devproxyDůvěřujte certifikátu, až budete vyzváni.
Použijte vývojovou proxy z WSL
Když Dev Proxy běží jako systémový proxy server ve Windows (výchozí chování) a jste nakonfigurovali síťování WSL, aplikace ve WSL automaticky směrují svůj provoz přes něj.
Spusťte aplikaci ve WSL běžným způsobem. Dev Proxy zachycuje požadavky HTTPS provedené aplikacemi, které respektují nastavení proxy serveru.
Důležité
Po spuštění nebo zastavení dev proxy serveru restartujte WSL.
WSL při spuštění přečte nastavení Windows proxy serveru. Pokud spustíte Dev Proxy po spuštění WSL nebo pokud zastavíte a restartujete Dev Proxy, budete muset restartovat WSL, aby se změny projevily:
wsl --shutdown
Pak spusťte novou relaci WSL.
Důvěřovat certifikátu ve WSL
Aby vývojářský proxy server zachytával provoz HTTPS, musí aplikace ve WSL důvěřovat jeho certifikátu. Certifikát můžete zkopírovat z Windows nebo ho exportovat pomocí rozhraní DEV Proxy API.
Možnost A: Zkopírování certifikátu z Windows
Ve WSL zkopírujte certifikát z Windows:
cp "/mnt/c/Users/<your-username>/AppData/Local/Programs/Dev Proxy/rootCert.pfx" ~/Export a instalace certifikátu:
# Export the certificate openssl pkcs12 -in ~/rootCert.pfx -clcerts -nokeys -out dev-proxy-ca.crt -passin pass:"" # Install the certificate sudo cp dev-proxy-ca.crt /usr/local/share/ca-certificates/ # Update certificates sudo update-ca-certificates
Možnost B: Použití rozhraní DEV Proxy API
API Dev Proxy vyžaduje token nositele. Když je Dev Proxy spuštěný ve Windows, získejte token spuštěním příkazu api token v terminálu systému Windows:
devproxy api token
Pak ve WSL stáhněte a nainstalujte certifikát. Nahraďte <token> tokenem, který jste získal/a:
# Download the certificate from Dev Proxy API
curl -H "Authorization: Bearer <token>" -o dev-proxy-ca.crt "http://127.0.0.1:8897/proxy/rootCertificate?format=crt"
# Install the certificate
sudo cp dev-proxy-ca.crt /usr/local/share/ca-certificates/
# Update certificates
sudo update-ca-certificates
Poznámka:
Některé aplikace můžou vyžadovat dodatečnou konfiguraci, aby důvěřovaly systémovému úložišti certifikátů. Pro Node.js aplikace možná budete muset nastavit NODE_TLS_REJECT_UNAUTHORIZED=0 pro účely vývoje. Zakázání ověření certifikátu se nedoporučuje pro produkční kód.
Možnost 2: Vývojový proxy server uvnitř WSL
Pokud dáváte přednost zcela spuštění dev Proxy v rámci WSL, nainstalujte ho pomocí metody instalace Linuxu a nakonfigurujte proxy ručně.
Instalace Dev Proxy v WSL
Instalační skript vyžaduje unzip k extrakci Dev Proxy. Nové distribuce WSL, jako je Ubuntu, ji ve výchozím nastavení nezahrnují. Nainstalujte unzip:
sudo apt update
sudo apt install unzip
Nainstalujte dev Proxy pomocí instalačního skriptu:
bash -c "$(curl -sL https://aka.ms/devproxy/setup.sh)"
Ruční konfigurace proxy serveru
Vzhledem k tomu, že WSL nemá grafické desktopové prostředí, dev Proxy se nemůže automaticky zaregistrovat jako systémový proxy server. Nakonfigurujte aplikace tak, aby používaly proxy server ručně.
Vytvořte konfigurační soubor pro vývojový proxy s
asSystemProxynastaveným nafalse:{ "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v4.0.0/rc.schema.json", "asSystemProxy": false, "plugins": [ { "name": "RetryAfterPlugin", "enabled": true, "pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll" }, { "name": "GenericRandomErrorPlugin", "enabled": true, "pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll", "configSection": "genericRandomErrorPlugin" } ], "urlsToWatch": [ "https://jsonplaceholder.typicode.com/*" ], "genericRandomErrorPlugin": { "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v4.0.0/genericrandomerrorplugin.schema.json", "errorsFile": "devproxy-errors.json", "rate": 50 }, "logLevel": "information" }Spustit dev proxy:
devproxyDůvěřovat certifikátu:
# Export Dev Proxy root certificate openssl pkcs12 -in ~/.config/dev-proxy/rootCert.pfx -clcerts -nokeys -out dev-proxy-ca.crt -passin pass:"" # Install the certificate sudo cp dev-proxy-ca.crt /usr/local/share/ca-certificates/ # Update certificates sudo update-ca-certificatesNakonfigurujte aplikaci tak, aby používala proxy server. Nastavte proměnnou
HTTPS_PROXYprostředí:export HTTPS_PROXY=http://127.0.0.1:8000Nebo ji zadejte při spuštění aplikace:
HTTPS_PROXY=http://127.0.0.1:8000 node app.js
Návod
Další informace o konfiguraci proxy serveru pro Node.js aplikace najdete v tématu Použití služby Dev Proxy se Node.js aplikacemi.
Porovnání přístupů
| Vlastnost | Hostitel Windows (možnost 1) | Uvnitř WSL (možnost 2) |
|---|---|---|
| Složitost nastavení | Jednoduchost | Mírný |
| Requirements | Windows 11 22H2 nebo novější, režim zrcadleného síťování WSL | None |
| Správa certifikátů | Jednorázová kopie z Windows | Ruční export |
| Konfigurace proxy serveru | Automatické (WSL Auto Proxy) | Ruční (HTTPS_PROXY) |
| Vyžaduje se restartování WSL. | Ano, při přepínání proxy serveru | Ne |
| Funguje se všemi aplikacemi WSL | Ano | Závisí na podpoře proxy aplikací. |
Pro většinu scénářů se doporučuje používat Dev Proxy ve Windows (možnost 1) kvůli jednoduchosti a automatické konfiguraci proxy serveru.
Řešení problémů
Požadavky nejsou zachycovány při použití hostitele Windows
Pokud dev Proxy ve Windows nezachycuje požadavky z WSL:
Ověřte, že
networkingMode=mirroredaautoProxy=truejsou nastavené v[wsl2]části souboru.wslconfig. Další informace naleznete v tématu Konfigurace sítě WSL.Restartujte WSL a aktualizujte nastavení proxy serveru:
wsl --shutdownOvěřte, že je Dev proxy spuštěná a zaregistrovaná jako systémový proxy server.
Zkontrolujte, jestli je certifikát dev proxy v WSL důvěryhodný.
unzip: příkaz nebyl nalezen.
Pokud instalační skript selže s chybou unzip: command not found , nainstalujte unzip a spusťte instalační skript znovu:
sudo apt update
sudo apt install unzip
Chyby certifikátu
Pokud se zobrazí chyby certifikátu:
- Ujistěte se, že jste certifikát nainstalovali ve WSL podle kroků v části Důvěřovat certifikátu ve WSL.
- U Node.js aplikací možná budete muset aplikaci nakonfigurovat tak, aby používala agenta proxy. Viz Použití dev proxy s Node.js aplikacemi.
Problémy se sítí WSL
WSL 2 používá virtualizovaný síťový adaptér. Pokud dochází k problémům se sítí:
- Ujistěte se, že brána firewallu Windows umožňuje Dev Proxy.
- Zkuste při konfiguraci adresy proxy použít
localhostmísto127.0.0.1.