Proxy
ν€λλ₯Ό μ λ¬νμ¬ CGI μ€ν¬λ¦½νΈμμ HTTP_PROXY
λ₯Ό μ€μ ν μ μμ΅λλ€. μ€ν¬λ¦½νΈκ° μμ²μ μ¬μ©νμ¬ νμΌμ λ€μ΄λ‘λνλ κ²½μ° μμ²μ 곡격μκ° μ 곡ν νλ‘μλ₯Ό μ¬μ©νμ¬ μμ²μ λ§λλλ€.
μ΄κ²μ Perl(2001λ μ΄ν), Ruby λ° curlκ³Ό κ°μ λΌμ΄λΈλ¬λ¦¬μμμ κ°μ΄ μνλμ΄μΌ ν©λλ€.
HTTP_PROXY
(λλ¬Έμ)μ κΈ°μ‘΄μ μλ¬Έμ http_proxy
(μμ² 2.7.0)μ΄ λͺ¨λ νμ©λλ κ²μ νμΈνμ΅λλ€.
μ°λ¦¬λ IRCμμ μ΄μ λν΄ κΈΈκ² λ Όμνμ΅λλ€. μ¬κΈ°μλ 볡μ‘ν μκ²¬μ΄ μμ§λ§ λ€μκ³Ό κ°μ΅λλ€.
Session.trust_env
. False
λ‘ μ€μ νλ©΄ μ΄ μνμ΄ μμ ν μνλ©λλ€.trust_env=True
λ₯Ό μ¬μ©νμ¬ CGI νλ‘μΈμ€ λ΄μμ μμ²μ μ€νν λ κ²½κ³ λ₯Ό λ°μμν¬ κ°λ₯μ±μ κΈ°κΊΌμ΄ κ³ λ €ν μν₯μ΄ μμΌλ©° trust_env
λ₯Ό False
λ‘ κ°μ ν κ°λ₯μ±λ κ³ λ €ν μ©μκ° μμ΅λλ€. μ΄λ¬ν μν©μμ, κ·Έλ¬λ νμ€μ μΌλ‘ νμ΄μ¬ μ½λμ κ²½μ° μ΄μ λν μ¬λ°λ₯Έ ν΄κ²°μ±
μ λ¨μν _CGI λ΄μμ μμ© νλ‘κ·Έλ¨μ μ€ννμ§ μλ κ²μ
λλ€.
λμκ² μλ―Έκ°μλ€. CGI 컨ν μ€νΈμμ HTTP_PROXY(λλ¬Έμ)λ₯Ό νΌνλ κ²μ μλ§λ μ’μ μ‘°μΉμΌ μ μμ§λ§ μμ²μ΄ μ§μ μννμ§ μλ κ²½μ° μ κ·Ήμ μΈ μ‘°μΉλ₯Ό μ·¨νλ κ²μ΄ μλ―Έκ° μμ κ²μ λλ€. λ μμ μ wgiλ§ μ¬μ©ν©λλ€. λλ μ΄κ²μ λ«κ³ κ³μν κ²μ΄λ€.
@remram44 κ·Έλ§ν κ°μΉκ° μκΈ° λλ¬Έμ stdlibμ urllib.request
λͺ¨λμ getproxies
λ©μλμ λν ν¨μΉλ₯Ό _μ¬μ¬ν_ μ§μνμ¬ μ΄λ¬ν μ’
λ₯μ κ²μ¬λ₯Ό ꡬνν©λλ€. ν¨μΉλ₯Ό μ μ©νκΈ°μ ν¨μ¬ λ μμ°μ μΈ μ₯μμΈ κ² κ°μ΅λλ€. =) μ΄μ λν λ²κ·Έ λ³΄κ³ μλ₯Ό μ΄κ³ μΆλ€λ©΄ κΈ°κΊΌμ΄ μ°Έμ¬νκ² μ΅λλ€. ν¨μΉλ₯Ό μ§μ μμ±νκΈ° μν΄ μμν μλ μμ΅λλ€!
λλ cpython-27568 μ μ μΆνλ€.
κ°μ₯ μ μ©ν λκΈ
μ°λ¦¬λ IRCμμ μ΄μ λν΄ κΈΈκ² λ Όμνμ΅λλ€. μ¬κΈ°μλ 볡μ‘ν μκ²¬μ΄ μμ§λ§ λ€μκ³Ό κ°μ΅λλ€.
Session.trust_env
.False
λ‘ μ€μ νλ©΄ μ΄ μνμ΄ μμ ν μνλ©λλ€.trust_env=True
λ₯Ό μ¬μ©νμ¬ CGI νλ‘μΈμ€ λ΄μμ μμ²μ μ€νν λ κ²½κ³ λ₯Ό λ°μμν¬ κ°λ₯μ±μ κΈ°κΊΌμ΄ κ³ λ €ν μν₯μ΄ μμΌλ©°trust_env
λ₯ΌFalse
λ‘ κ°μ ν κ°λ₯μ±λ κ³ λ €ν μ©μκ° μμ΅λλ€. μ΄λ¬ν μν©μμ, κ·Έλ¬λ νμ€μ μΌλ‘ νμ΄μ¬ μ½λμ κ²½μ° μ΄μ λν μ¬λ°λ₯Έ ν΄κ²°μ± μ λ¨μν _CGI λ΄μμ μμ© νλ‘κ·Έλ¨μ μ€ννμ§ μλ κ²μ λλ€.