phar पैकिंग
phar PHP में JAR के समान एक पैकेज फ़ाइल है, आप phar का उपयोग करके अपने webman प्रोजेक्ट को एकल phar फ़ाइल में पैक कर सकते हैं, जो तैनाती के लिए सुविधाजनक है।
यहाँ fuzqing के PR का बहुत धन्यवाद।
ध्यान दें
आपकोphp.ini
के phar कॉन्फ़िगरेशन विकल्प को बंद करना होगा, अर्थात्phar.readonly = 0
सेट करें।
कमांड लाइन उपकरण स्थापित करें
composer require webman/console
पैकिंग
webman प्रोजेक्ट की रूट डायरेक्टरी में कमांड चलाएं php webman build:phar
यह bulid डायरेक्टरी में एक webman.phar
फ़ाइल उत्पन्न करेगा।
पैकिंग से संबंधित कॉन्फ़िगरेशन
config/plugin/webman/console/app.php
में है।
शुरू करने और रुकने से संबंधित कमांड
शुरू करें
php webman.phar start
या php webman.phar start -d
रुकें
php webman.phar stop
स्थिति देखें
php webman.phar status
कनेक्शन स्थिति देखें
php webman.phar connections
रिस्टार्ट करें
php webman.phar restart
या php webman.phar restart -d
विवरण
-
पैकिंग के बाद प्रोजेक्ट reload का समर्थन नहीं करता है, कोड को अपडेट करने के लिए restart करना आवश्यक है।
-
पैकिंग फ़ाइल के आकार को बहुत बड़े होने से बचाने के लिए, आप
config/plugin/webman/console/app.php
मेंexclude_pattern
औरexclude_files
विकल्प सेट कर सकते हैं ताकि अनावश्यक फ़ाइलों को छोड़ दिया जा सके। -
webman.phar चलाने के बाद, webman.phar所在目录 में runtime डायरेक्टरी उत्पन्न होगी, जो लॉग जैसी अस्थायी फ़ाइलों को रखेगी।
-
अगर आपके प्रोजेक्ट में .env फ़ाइल का उपयोग किया गया है, तो .env फ़ाइल को webman.phar所在目录 में रखना होगा।
-
उपयोगकर्ता द्वारा अपलोड की गई फ़ाइलों को phar पैक में संग्रहीत न करें, क्योंकि
phar://
प्रोटोकॉल का उपयोग करके उपयोगकर्ता द्वारा अपलोड की गई फ़ाइलों को ऑपरेट करना बहुत खतरनाक है (phar विपरीत श्रृंखला भेद्यता)। उपयोगकर्ता द्वारा अपलोड की गई फ़ाइलें अलग से phar पैक के बाहर के डिस्क पर संग्रहीत की जानी चाहिए, इसके लिए नीचे देखें। -
अगर आपके व्यवसाय को public डायरेक्टरी में फ़ाइलें अपलोड करने की आवश्यकता है, तो public डायरेक्टरी को अलग किया जाना चाहिए और webman.phar所在目录 में रखा जाना चाहिए, इस समय आपको
config/app.php
को कॉन्फ़िगर करना होगा।'public_path' => base_path(false) . DIRECTORY_SEPARATOR . 'public',
व्यवसाय सहायक फ़ंक्शन
public_path($फाइल के सापेक्ष स्थान)
का उपयोग करके वास्तविक public डायरेक्टरी स्थान पा सकता है। -
ध्यान दें कि webman.phar विंडोज़ पर कस्टम प्रक्रियाओं को शुरू करने का समर्थन नहीं करता है।