मुझे लगता है कि मुझे अपने सर्वर (एलएएमपी) पर एमएक्स रिकॉर्ड्स को इंगित करने की आवश्यकता होगी, - आने वाले ई-मेल संदेश को क्या संसाधित करता है?

क्या ऐसा करने के लिए कोई मौजूदा PHP पुस्तकालय हैं?

2
john 25 मई 2011, 03:05

3 जवाब

सबसे बढ़िया उत्तर

आप PHP को मेल सर्वर के रूप में उपयोग नहीं करना चाहते हैं। आपके पास दो विकल्प हैं:

  1. एक क्लासिक ईमेल सर्वर (पोस्टफ़िक्स, सेंडमेल, एक्ज़िम, आदि) सेट करें जो स्थानीय मेलबॉक्स में नए संदेश वितरित करता है। उस मेलबॉक्स को PHP से एक्सेस करने के लिए IMAP या POP का उपयोग करें और उसमें से संदेशों को बाहर निकालें। वैकल्पिक रूप से, इसी पद्धति का उपयोग (वस्तुतः) किसी भी दूरस्थ मेल सेवा के साथ भी किया जा सकता है, इस प्रकार आपको मेल सर्वर को प्रशासित करने के कर्तव्य से मुक्त किया जा सकता है। (जिसे आप एक मेलबॉक्स के लिए इसके लायक नहीं पाएंगे।) यह विधि आम तौर पर हर कुछ मिनटों में क्रॉन के माध्यम से चलती है, इसलिए यदि आवश्यक हो तो आपको "तत्काल" सक्रियण नहीं मिलेगा।

  2. एक क्लासिक ईमेल सर्वर (पोस्टफ़िक्स, सेंडमेल, एक्ज़िम, आदि) सेट करें और डिलीवरी के समय संदेशों को इंटरसेप्ट करने के लिए प्रोमेल या समान का उपयोग करें, और उन्हें एक PHP स्क्रिप्ट पर पाइप करें। ईमेल आने के तुरंत बाद यह विधि स्क्रिप्ट को सक्रिय कर देगी, इसलिए आपके पास # 1 की तरह कोई अंतराल समय नहीं होगा। हालांकि, इसे कॉन्फ़िगर करना अधिक कठिन है (विशेषकर यदि आपने पहले मेल सर्वर का रखरखाव नहीं किया है) और अधिकांश बाहरी होस्टेड ईमेल सेवाओं के साथ काम नहीं करेगा।

4
Alex Howansky 25 मई 2011, 17:22
+1। ओपी शायद चाहता है 2 अगर वह मेलिंग लिस्ट सॉफ्टवेयर या ऐसा कुछ लिख रहा है।
 – 
Lightness Races in Orbit
25 मई 2011, 03:32
सहमत हूं, मैं # 2 पसंद करता हूं क्योंकि यह मतदान के बजाय ट्रिगर होता है। हालाँकि, यदि आप (संभवतः?) यह निर्णय लेते हैं कि अपने स्वयं के ईमेल सर्वर का प्रबंधन एक मेलबॉक्स के लिए वृद्धि के लायक नहीं है, तो आप शायद # 1 के साथ फंस जाएंगे।
 – 
Alex Howansky
25 मई 2011, 05:34
बिल्कुल। उत्तर में उल्लेख के लायक हो सकता है, वास्तव में, #1 को उसी तरह स्थानीय (और इस प्रकार स्व-प्रशासित) होने की आवश्यकता नहीं है #2
 – 
Lightness Races in Orbit
25 मई 2011, 05:36
@ टॉम: ठीक है, स्थानीय नहीं है जो मेरा मतलब है, मैंने टेक्स्ट को स्पष्ट कर दिया है, धन्यवाद।
 – 
Alex Howansky
25 मई 2011, 17:23

ईमेल प्राप्त करने के लिए पाइप उपनाम का उपयोग करें।

1
Community 13 अप्रैल 2017, 15:13
फिर PHP फ़ाइल में file_get_contents("php://stdin") का उपयोग करें और (वैकल्पिक रूप से) इसे मेल पार्सिंग लाइब्रेरी (जैसे, us2 के माध्यम से पास करें। .php.net/mailparse)।
 – 
Matthew
25 मई 2011, 03:34

मैं आपको पर्ल में प्रसंस्करण करने की सलाह दूंगा (पायथन भी ठीक है, लेकिन पर्ल में PHP के समान वाक्यविन्यास है), जो कार्य के लिए अधिक उपयुक्त है। आप वहां सीपीएएन के माध्यम से बहुत सारे पुस्तकालय भी पा सकते हैं।

http://search.cpan.org/~rjbs/Email-Simple-2.100/lib/Email/Simple.pm

0
romaninsh 25 मई 2011, 03:27