NGINX เจฏเฉ‚เจจเจฟเจŸ 1.18.0 เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจธเจฐเจตเจฐ เจฐเฉ€เจฒเฉ€เจœเจผ

เจนเฉ‹เจ‡เจ† เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจธเจฐเจตเจฐ เจฐเฉ€เจฒเฉ€เจœเจผ NGINX เจฏเฉ‚เจจเจฟเจŸ 1.18, เจœเจฟเจธ เจฆเฉ‡ เจ…เฉฐเจฆเจฐ เจตเฉฑเจ–-เจตเฉฑเจ– เจชเฉเจฐเฉ‹เจ—เจฐเจพเจฎเจฟเฉฐเจ— เจญเจพเจธเจผเจพเจตเจพเจ‚ (Python, PHP, Perl, Ruby, Go, JavaScript/Node.js เจ…เจคเฉ‡ Java) เจตเจฟเฉฑเจš เจตเฉˆเจฌ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจเจพเจ‚ เจฆเฉ€ เจธเจผเฉเจฐเฉ‚เจ†เจค เจจเฉ‚เฉฐ เจฏเจ•เฉ€เจจเฉ€ เจฌเจฃเจพเจ‰เจฃ เจฒเจˆ เจ‡เฉฑเจ• เจนเฉฑเจฒ เจตเจฟเจ•เจธเจฟเจค เจ•เฉ€เจคเจพ เจœเจพ เจฐเจฟเจนเจพ เจนเฉˆเฅค NGINX เจฏเฉ‚เจจเจฟเจŸ เจ‡เฉฑเจ•เฉ‹ เจธเจฎเฉ‡เจ‚ เจตเฉฑเจ–-เจตเฉฑเจ– เจชเฉเจฐเฉ‹เจ—เจฐเจพเจฎเจฟเฉฐเจ— เจญเจพเจธเจผเจพเจตเจพเจ‚ เจตเจฟเฉฑเจš เจ•เจˆ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจเจพเจ‚ เจจเฉ‚เฉฐ เจšเจฒเจพ เจธเจ•เจฆเจพ เจนเฉˆ, เจœเจฟเจธ เจฆเฉ‡ เจฒเจพเจ‚เจš เจชเฉˆเจฐเจพเจฎเฉ€เจŸเจฐเจพเจ‚ เจจเฉ‚เฉฐ เจธเฉฐเจฐเจšเจจเจพ เจซเจพเจˆเจฒเจพเจ‚ เจจเฉ‚เฉฐ เจธเฉฐเจชเจพเจฆเจฟเจค เจ•เจฐเจจ เจ…เจคเฉ‡ เจฎเฉเฉœ เจšเจพเจฒเฉ‚ เจ•เจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจคเฉ‹เจ‚ เจฌเจฟเจจเจพเจ‚ เจ—เจคเฉ€เจธเจผเฉ€เจฒ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจฌเจฆเจฒเจฟเจ† เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆเฅค เจ•เฉ‹เจก C เจ…เจคเฉ‡ เจตเจฟเฉฑเจš เจฒเจฟเจ–เจฟเจ† เจ—เจฟเจ† เจนเฉˆ เจฆเฉเจ†เจฐเจพ เจตเฉฐเจกเจฟเจ† เจ…เจชเจพเจšเฉ‡ 2.0 เจฆเฉ‡ เจ…เจงเฉ€เจจ เจฒเจพเจ‡เจธเฉฐเจธเจธเจผเฉเจฆเจพเฅค เจตเจฟเฉฑเจš NGINX เจฏเฉ‚เจจเจฟเจŸ เจฆเฉ€เจ†เจ‚ เจตเจฟเจธเจผเฉ‡เจธเจผเจคเจพเจตเจพเจ‚ เจคเฉ‹เจ‚ เจœเจพเจฃเฉ‚ เจนเฉ‹ เจธเจ•เจฆเฉ‡ เจนเฉ‹ เจ˜เฉ‹เจธเจผเจฃเจพ เจชเจนเจฟเจฒเจพ เจฎเฉเฉฑเจฆเจพ.

เจจเจตเฉ‡เจ‚ เจธเฉฐเจธเจ•เจฐเจฃ เจตเจฟเฉฑเจš:

  • ะ ะตะฐะปะธะทะพะฒะฐะฝ ั€ะตะถะธะผ ะธะทะพะปัั†ะธะธ ยซrootfsยป ะดะปั ะพะณั€ะฐะฝะธั‡ะตะฝะธั ะดะพัั‚ัƒะฟะฐ ะฟั€ะธะปะพะถะตะฝะธั ั‚ะพะปัŒะบะพ ะบ ะพะฟั€ะตะดะตะปั‘ะฝะฝะพะน ั‡ะฐัั‚ะธ ั„ะฐะนะปะพะฒะพะน ัะธัั‚ะตะผั‹. ะ”ะปั ัะผะตะฝั‹ ะฒะธะดะธะผะพะณะพ ะดะปั ะฟั€ะธะปะพะถะตะฝะธั ะบะพั€ะฝั ะคะก ะฟั€ะธะผะตะฝัะตั‚ัั ะฒั‹ะทะพะฒ pivot_root(), ะบะพั‚ะพั€ั‹ะน ะฒ ะพั‚ะปะธั‡ะธะต ะพั‚ ะฝะตะฑะตะทะพะฟะฐัะฝะพะณะพ ัะธัั‚ะตะผะฝะพะณะพ ะฒั‹ะทะพะฒะฐ chroot() ะฝะต ะฟั€ะพัั‚ะพ ัะผะตั‰ะฐะตั‚ ะบะพั€ะตะฝัŒ ะคะก, ะฐ ะธัะฟะพะปัŒะทัƒะตั‚ ะธะทะพะปัั†ะธัŽ ะฝะฐ ัƒั€ะพะฒะฝะต ะฟั€ะพัั‚ั€ะฐะฝัั‚ะฒะฐ ะธะผั‘ะฝ, ะฐะฝะฐะปะพะณะธั‡ะฝัƒัŽ ั‚ะพะน, ั‡ั‚ะพ ะธัะฟะพะปัŒะทัƒะตั‚ัั ะฒ ะบะพะฝั‚ะตะนะฝะตั€ะฐั…. ะ‘ะพะปะตะต ั‚ะพะณะพ, ะฟะพะผะธะผะพ ะฝะตะฟะพัั€ะตะดัั‚ะฒะตะฝะฝะพ ัƒะบะฐะทะฐะฝะฝะพะณะพ ะบะฐั‚ะฐะปะพะณะฐ ะฟั€ะธะปะพะถะตะฝะธั, Unit ั‚ะฐะบะถะต ะฐะฒั‚ะพะผะฐั‚ะธั‡ะตัะบะธ ะผะพะฝั‚ะธั€ัƒะตั‚ ะฒ ะธะทะพะปะธั€ะพะฒะฐะฝะฝะพะต ะดะตั€ะตะฒะพ ะคะก ะฒัะต ัะฟะตั†ะธั„ะธั‡ะฝั‹ะต ัะทั‹ะบะพะฒั‹ะต ะทะฐะฒะธัะธะผะพัั‚ะธ (ั€ะฐะฑะพั‚ะฐะตั‚ ั‚ะพะปัŒะบะพ ะดะปั ะพะณั€ะฐะฝะธั‡ะตะฝะฝะพะณะพ ั‡ะธัะปะฐ ัะทั‹ะบะพะฒ).

    {
    ยซtypeยป: ยซpython 2.7ยป,
    ยซpathยป: ยซ/ยป,
    ยซhomeยป: ยซ/venv/ยป,
    ยซmoduleยป: ยซwsgiยป,
    ยซisolationยป: {
    ยซrootfsยป: ยซ/var/app/sandbox/ยป
    }
    }

  • ะ’ะพะทะผะพะถะฝะพัั‚ัŒ ัƒะบะฐะทะฐะฝะธั ะฒ ะบะพะฝั„ะธะณัƒั€ะฐั†ะธะธ ะฝะตัะบะพะปัŒะบะธั… ัั…ะตะผ ะฒั‹ะทะพะฒะฐ ะพะฑั€ะฐะฑะพั‚ั‡ะธะบะพะฒ ะฟั€ะธ ะฟะพะผะพั‰ะธ ะฝะพะฒะพะน ัะตะบั†ะธะธ ยซเจŸเฉ€เจšเฉ‡ยซ. ะฃะบะฐะทะฐะฝะฝะฐั ะฒะพะทะผะพะถะฝะพัั‚ัŒ ะฟะพะทะฒะพะปัะตั‚ ัƒะฟั€ะพัั‚ะธั‚ัŒ ะฝะฐัั‚ั€ะพะนะบัƒ ัะผะตัˆะฐะฝะฝั‹ั… ัั…ะตะผ ะฐะดั€ะตัะฐั†ะธะธ, ะบะพะณะดะฐ, ะฝะฐะฟั€ะธะผะตั€, ะฑะพะปัŒัˆะฐั ั‡ะฐัั‚ัŒ ะทะฐะฟั€ะพัะพะฒ ะพะฑั€ะฐะฑะฐั‚ั‹ะฒะฐะตั‚ัั ั‡ะตั€ะตะท index.php ะฝะตะทะฐะฒะธัะธะผะพ ะพั‚ ะทะฐะฟั€ะพัˆะตะฝะฝะพะณะพ URI, ะฐ ะธะฝั‚ะตั€ั„ะตะนั ะฐะดะผะธะฝะธัั‚ั€ะฐั‚ะพั€ะฐ ะฝะฐะฟั€ัะผัƒัŽ ะฟั€ะธะฒะพะดัั‚ ะบ ะฒั‹ะทะพะฒัƒ ัะบั€ะธะฟั‚ะพะฒ. ะ ะฐะฝะตะต ะฟะพะดะพะฑะฝั‹ะต ะฝะฐัั‚ั€ะพะนะบะธ ะฟั€ะพะธะทะฒะพะดะธะปะธััŒ ั‡ะตั€ะตะท ะพะฟั€ะตะดะตะปะตะฝะธั ะดะฒัƒั… ะฟั€ะธะปะพะถะตะฝะธะน, ะฐ ั‚ะตะฟะตั€ัŒ ะผะพะถะฝะพ ะพะฑะพะนั‚ะธััŒ ะพะดะฝะธะผ. ะะฐะฟั€ะธะผะตั€, ะฒะผะตัั‚ะพ:

    {
    ยซwp_indexยป: {
    ยซtypeยป: ยซphpยป,
    ยซuserยป: ยซwp_userยป,
    ยซgroupยป: ยซwp_userยป,
    ยซrootยป: ยซ/path/to/wordpress/ยป,
    ยซscriptยป: ยซindex.phpยป
    },

    ยซwp_directยป: {
    ยซtypeยป: ยซphpยป,
    ยซuserยป: ยซwp_userยป,
    ยซgroupยป: ยซwp_userยป,
    ยซrootยป: ยซ/path/to/wordpress/ยป
    }
    }

    เจจเจฟเจฐเจงเจพเจฐเจค เจ•เฉ€เจคเจพ เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆ

    {
    ยซwpยป: {
    ยซtypeยป: ยซphpยป,
    ยซuserยป: ยซwp_userยป,
    ยซgroupยป: ยซwp_userยป,

    ยซtargetsยป: {
    ยซindexยป: {
    ยซrootยป: ยซ/path/to/wordpress/ยป,
    ยซscriptยป: ยซindex.phpยป
    },

    ยซdirectยป: {
    ยซrootยป: ยซ/path/to/wordpress/ยป
    }
    }
    }
    }

  • เจธเจนเจฟเจฏเฉ‹เจ— เจœเฉ‹เฉœเจฟเจ† เจ—เจฟเจ† เจ•เฉ‹เจกเจฟเฉฐเจ— ัะธะผะฒะพะปะพะฒ ะฒ ั„ะพั€ะผะต ยซ%xxยป ะฒ ะพะฟั†ะธัั… ัะพะฟะพัั‚ะฐะฒะปะตะฝะธั ยซuriยป ะธ ยซargumentsยป, ะฐ ั‚ะฐะบะถะต ะฒ ะพะฟั†ะธะธ ยซpassยป.

เจธเจฐเฉ‹เจค: opennet.ru

เจ‡เฉฑเจ• เจŸเจฟเฉฑเจชเจฃเฉ€ เจœเฉ‹เฉœเฉ‹