PyCharm-un debugger əlaqəsini proksi zəncirindən kənarda saxlayın
Seçilmiş Python interpretatorunu Proxychains üçün sarın, arqumentləri və debugger-ə birbaşa loopback marşrutunu qoruyun.
Python sazlama prosesi ətrafında Proxychains iki fərqli əlaqəni tuta bilər: skriptin xaricə gedən xidmət əlaqəsi və PyCharm-a qayıdan lokal əlaqəsi. Debugger ikincinin lokal qalmasına ehtiyac duyur.
IDE və host interpretator sarğısını dəstəklədikdə, onu layihənin faktiki interpretatoruna yönəldin:
#!/bin/sh
exec /usr/bin/proxychains4 -f /home/alex/proxychains-debug.conf "/home/alex/project/.venv/bin/python" "$@"Hər iki icra faylının yolunu və konfiqurasiya yolunu əvəz edin. "$@" ötürməsi IDE-nin fərdi debugger arqumentlərini qoruyur. exec isə işə salınmış prosesin IDE ilə onun övladı arasında lazımsız sarğı qabığı qoymasının qarşısını alır.
Həmin ayrılmış Proxychains konfiqurasiyasında nəzərdə tutulan zənciri saxlayın və uyğun birbaşa loopback istisnasını əlavə edin:
localnet 127.0.0.0/255.0.0.0
localnet ::1/128Bu qaydalar rəqəmsal loopback təyinatları üçün zənciri yan keçir. Verilən yuxarı axın konfiqurasiyası proxy_dns ilə host adı uyğunlaşdırması üçün məhdudiyyətləri sənədləşdirir, ona görə də həmin yolu diaqnoz edərkən debugger-in faktiki rəqəmsal loopback ünvanına üstünlük verin. Uzaq DNS xəritələmə alt şəbəkəsini həmin istisna edilmiş diapazonun içində yerləşdirməyin.
İnterpretatorun kimliyini qoruyun
Sarğıda /usr/bin/python3 istifadə etmək layihənin .venv-dən səssizcə başqa mühit seçə bilər. Onda çatışmayan paketlər proksi ilə bağlı nasazlıq kimi görünür, halbuki başqa interpretator işə düşüb.
Proxychains dəstəklənən dinamik kitabxana müdaxiləsinə əsaslanır. IDE-nin sarğını interpretator kimi qəbul etməməsi, qorunan macOS prosesi və ya statik bağlanmış şəbəkə klienti ayrı uyğunluq şərtidir. Quruluşu nəzərdə tutulan Python prosesi ilə məhdudlaşdırın və seçilmiş interpretatoru IDE konfiqurasiyasında yoxlayın.