WordPress håller sin egen webbplats utanför proxyn
Ta hänsyn till kringgåendereglerna i WordPress HTTP-API när proxykonstanter fungerar utåt men en begäran till själva webbplatsen går direkt.
WP_PROXY_HOST och WP_PROXY_PORT är inställda. En begäran till ett externt API använder proxyn, men en begäran tillbaka till WordPress eget värdnamn gör det inte. Det kan vara HTTP-API:ets avsedda kringgåendepolicy.
WP_HTTP_Proxy avgör om en viss URI ska gå genom proxyn. Dess standardlogik kringgår localhost och det värdnamn som härleds från webbplatsens konfigurerade siteurl. Detta är separat från att bara avgöra om proxykonstanter finns.
Undersök URL:en som WordPress utvärderade
Håll det efterfrågade värdnamnet, den konfigurerade webbplatsadressen och WP_PROXY_BYPASS_HOSTS tillsammans. En begäran till ett offentligt värdnamn och en till ett internt alias kan fatta olika beslut även om båda når samma applikation.
WP_PROXY_BYPASS_HOSTS lägger till en konfigurerad lista med värdnamnsundantag. Det är inte en uppsättning destinationer som den externa proxyn tillåter, och det gör inte en annars blockerad extern begäran tillåten.
Standardundantaget för den egna webbplatsen kan vara användbart: det hindrar att en lokal applikationsbegäran av loopback-typ skickas ut till en mellanhand. Men en installation där webbplatsens offentliga värdnamn bara nås via en viss godkänd rutt kan behöva ett annat medvetet beslut.
Ändra beslutet vid den stödda kroken
Filtret pre_http_send_through_proxy kan åsidosätta beslutet per URI. Håll varje åsidosättning smal och anpassa den till det värdnamn eller villkor den ska hantera. Att returnera ett fast svar för varje URI ändrar policyn för hela HTTP-API:et.
Gå igenom även den valda transporten. Kod som anropar ett separat SDK eller en rå PHP-nätverksfunktion använder inte automatiskt WordPress HTTP-API och dess filter.
När du diagnostiserar denna väg, registrera kringgåendebeslutet utan att offentliggöra fullständiga begäranargument. De kan innehålla kakor, kontoinformation och proxyhemligheter. En proxylogg utan en matchande begäran är förenlig med ett kringgående, men den är inte ensam tillräcklig för att skilja det från en begäran som aldrig gjordes.