Miksi systemd-palvelu ei saa komentotulkkisi välityspalvelinasetuksia
Aseta välityspalvelin systemd-palvelun todelliseen ympäristöön; päätteessä viety muuttuja ei määritä käynnissä olevaa prosessia uudelleen.
Tutki epäonnistuvaa palvelua sen sijaan, että veisit päätteessä vielä yhden muuttujan. systemctl cat example.service näyttää sen yksikön ja täydentävät asetustiedostot; tarkista, onko käytössä EnvironmentFile, muita ohituksia tai sovelluksen omia välityspalvelinasetuksia. Lue tunnistetietoja sisältävä tuloste paikallisesti.
Jos sovellus käyttää HTTP-välityspalvelimen ympäristömuuttujia, palvelun täydentävä asetustiedosto voi antaa:
[Service]
Environment="HTTP_PROXY=http://203.0.113.10:8080"
Environment="HTTPS_PROXY=http://203.0.113.10:8080"Korvaa dokumentaation esimerkkiosoite ja käytä sovelluksen tukemia muuttujanimiä. Jos palvelu saa käyttää julkisia HTTP-välityspalvelimia, mahdollisia osoitteita on HTTP-välityspalvelinluettelossa. Omaa määritystään käyttävä asiakas voi ohittaa nämä arvot. Varmista myös, että kyse on tarkoitetusta järjestelmäpalvelusta: Käyttäjäpalvelulla on eri hallinta ja ympäristö; samankaltaisesti nimetyn järjestelmäyksikön muuttaminen ei korjaa sitä.
Kun olet muokannut oikeaa yksikköä tai täydentävää asetustiedostoa, lataa määritykset uudelleen ja käynnistä palvelu uudelleen silloin, kun sen työ voidaan keskeyttää:
sudo systemctl daemon-reload
sudo systemctl restart example.servicePelkkä daemon-reload ei korvaa käynnissä olevan prosessin ympäristöä. Uudelleenkäynnistys käynnistää uuden prosessin; komentotulkin export vaikuttaa vain kyseiseen komentotulkkiin ja sen myöhemmin käynnistämiin lapsiprosesseihin.
Kun palvelu saa odotetun URL-osoitteen, seuraa sen varsinaista virhettä. Sen tililtä voi puuttua pääsy CA-tiedostoon, sen verkon nimiavaruus ei ehkä tavoita kuuntelijaa tai välityspalvelin voi hylätä pyynnön. Nämä ovat seuraavia tarkistuksia, eivät syitä muokata edelleen asiaan liittymättömiä komentotulkin profiileja.