PyCharm ના ડિબગર કનેક્શનને પ્રોક્સી ચેનની બહાર રાખો
Proxychains માટે પસંદ કરેલા Python ઇન્ટરપ્રીટરને લપેટો અને દલીલો તથા ડિબગર સુધીનો સીધો loopback માર્ગ જાળવી રાખો.
Python ડિબગ પ્રક્રિયા આસપાસનું Proxychains બે અલગ કનેક્શન પકડી શકે છે: સ્ક્રિપ્ટનું બહાર જતું સેવા કનેક્શન અને PyCharm તરફ પાછું જતું તેનું સ્થાનિક કનેક્શન. ડિબગરને બીજું સ્થાનિક રહેવાની જરૂર છે.
જ્યાં IDE અને હોસ્ટ ઇન્ટરપ્રીટર રેપરને સમર્થન આપે છે, તેને પ્રોજેક્ટના વાસ્તવિક ઇન્ટરપ્રીટર તરફ નિર્દેશ કરો:
#!/bin/sh
exec /usr/bin/proxychains4 -f /home/alex/proxychains-debug.conf "/home/alex/project/.venv/bin/python" "$@"બંને એક્ઝિક્યુટેબલ પાથ અને રૂપરેખાંકન પાથ બદલો. "$@" આગળ મોકલવાથી IDE ના અલગ ડિબગર દલીલો જળવાય છે. exec શરૂ કરેલી પ્રક્રિયાને IDE અને તેના સંતાન વચ્ચે બિનજરૂરી રેપર શેલ છોડતું અટકાવે છે.
તે સમર્પિત Proxychains રૂપરેખાંકનમાં, ઇચ્છિત ચેન રાખો અને સંબંધિત સીધો loopback અપવાદ ઉમેરો:
localnet 127.0.0.0/255.0.0.0
localnet ::1/128આ નિયમો સંખ્યાત્મક loopback લક્ષ્યો માટે ચેનને છોડી દે છે. આપેલું અપસ્ટ્રીમ રૂપરેખાંકન proxy_dns સાથે હોસ્ટનામ મેળ માટેના પ્રતિબંધોનું દસ્તાવેજીકરણ કરે છે, તેથી તે માર્ગનું નિદાન કરતી વખતે ડિબગરનું વાસ્તવિક સંખ્યાત્મક loopback સરનામું પસંદ કરો. દૂરસ્થ DNS મેપિંગ સબનેટને એ જ બાકાત શ્રેણીમાં ન મૂકો.
ઇન્ટરપ્રીટરની ઓળખ જાળવો
રેપરમાં /usr/bin/python3 વાપરવાથી પ્રોજેક્ટના .venv માંથી બીજું પર્યાવરણ ચૂપચાપ પસંદ થઈ શકે છે. પછી ખૂટતા પેકેજો પ્રોક્સી સંબંધિત નિષ્ફળતા જેવા લાગે છે, જોકે બીજું ઇન્ટરપ્રીટર શરૂ થયું હતું.
Proxychains સમર્થિત ગતિશીલ-લાઇબ્રેરી અવરોધ પર આધાર રાખે છે. IDE દ્વારા રેપરને ઇન્ટરપ્રીટર તરીકે નકારવું, સુરક્ષિત macOS પ્રક્રિયા કે સ્થિર રીતે લિંક કરેલો નેટવર્ક ક્લાયન્ટ એ અલગ સુસંગતતા શરત છે. ગોઠવણીને ઇચ્છિત Python પ્રક્રિયા સુધી મર્યાદિત રાખો અને IDE ના રૂપરેખાંકનમાં પસંદ કરેલા ઇન્ટરપ્રીટરની ચકાસણી કરો.