मैं लोकलहोस्ट से मेल भेजने की कोशिश कर रहा हूं। लेकिन मैं लोकलहोस्ट से मेल भेजने में असमर्थ हूं, तो क्या कोई मुझे बता सकता है कि मैं लोकलहोस्ट से मेल भेजने के लिए अपने xampp को कैसे कॉन्फ़िगर करूं?
मैं लोकलहोस्ट से मेल भेजने की कोशिश कर रहा हूं। लेकिन मैं लोकलहोस्ट से मेल भेजने में असमर्थ हूं, तो क्या कोई मुझे बता सकता है कि मैं लोकलहोस्ट से मेल भेजने के लिए अपने xampp को कैसे कॉन्फ़िगर करूं?
जवाबों:
आप भेजने वाले पैकेज के साथ लोकलहोस्ट से मेल भेज सकते हैं, XmailP में सेंडमेल पैकेज इनबिल्ट है। इसलिए अगर आप XAMPP का इस्तेमाल कर रहे हैं तो आप आसानी से लोकलहोस्ट से मेल भेज सकते हैं।
उदाहरण के लिए आप मेल भेजने के लिए कॉन्फ़िगर कर सकते हैं C:\xampp\php\php.ini
और c:\xampp\sendmail\sendmail.ini
जीमेल के लिए।
में C:\xampp\php\php.ini
खोजextension=php_openssl.dll
और उस पंक्ति के आरंभ से अर्धविराम हटाने एसएसएल स्थानीय होस्ट के लिए जीमेल के लिए काम करते हैं।
php.ini फ़ाइल में खोजें [mail function]
और बदलें
SMTP=smtp.gmail.com
smtp_port=587
sendmail_from = my-gmail-id@gmail.com
sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t"
अब ओपन करें C:\xampp\sendmail\sendmail.ini
। निम्नलिखित कोड के साथ sendmail.ini में सभी मौजूदा कोड को बदलें
[sendmail]
smtp_server=smtp.gmail.com
smtp_port=587
error_logfile=error.log
debug_logfile=debug.log
auth_username=my-gmail-id@gmail.com
auth_password=my-gmail-password
force_sender=my-gmail-id@gmail.com
अब आप कर चुके हैं !! मेल फ़ंक्शन के साथ php फ़ाइल बनाएं और लोकलहोस्ट से मेल भेजें।
PS: उपरोक्त कोड में my-gmail-id और my-gmail-password को बदलना न भूलें । इसके अलावा, यदि आप ऊपर से सेटिंग कॉपी करते हैं, तो डुप्लिकेट कुंजियों को हटाना न भूलें। उदाहरण के लिए निम्न पंक्ति का अनुसरण करें यदि कोई अन्य sendmail_path है : sendmail_path="C:\xampp\mailtodisk\mailtodisk.exe"
php.ini फ़ाइल में
XAMMP कंट्रोल पैनल का उपयोग कर सर्वर को रिस्टार्ट करना भी याद रखें ताकि बदलाव प्रभावी हों।
जीमेल के लिए कृपया https://support.google.com/accounts/answer/6010255 पर जाएं कम सुरक्षित ऐप्स से पहुंच की अनुमति देने के लिए पर ।
लोकलहोस्ट से जीमेल के माध्यम से लिनक्स (सेंडमेल पैकेज के साथ) पर ईमेल भेजने के लिए कृपया PHP + Ubuntu पर ईमेल भेजें gmail फॉर्म लोकलहोस्ट का उपयोग कर ।
परीक्षण उद्देश्यों के लिए XAMPP v3.2.1 में आप XAMPP / mailoutput में भेजे गए ईमेल देख सकते हैं। विंडोज 8 पर मेरे मामले में इसे किसी भी अतिरिक्त कॉन्फ़िगरेशन की आवश्यकता नहीं थी और ईमेल के परीक्षण का एक सरल समाधान था
c:\xampp\php\php.ini
, खोज करें [mail function]
और उस पंक्ति का उल्लेख करें जो उल्लेख करता है mailtodisk.exe
। इस खंड में हर दूसरी पंक्ति को mail.add_x_header
एक के अलावा बाहर रखें ।
sendmail_path="C:\xampp\mailtodisk\mailtodisk.exe"
इसके स्थानीय या स्थानीय सर्वर पर ईमेल भेजने के लिए बहुत सरल है
नोट: मैं Xampp स्थापित के साथ विंडोज 7 64 बिट पर परीक्षण मेल सर्वर सॉफ्टवेयर का उपयोग कर रहा हूं
बस टेस्ट मेल सर्वर टूल डाउनलोड करें और अपनी वेबसाइट टेस्ट मेल सर्वर टूल पर दिए गए निर्देश के अनुसार इंस्टॉल करें
अब आपको php.ini
फ़ाइल के नीचे केवल दो लाइनों को बदलने की आवश्यकता है
[mail function]
अर्ध कोलन खोजें और निकालें जो पहले है;smtp = localhost
sendmail_path = "C:\xampp\mailtodisk\mailtodisk.exe"
आपको कुछ और बदलने की आवश्यकता नहीं है, लेकिन यदि आपको अभी भी चेक के लिए ईमेल नहीं मिल रहे हैं SMTP port
, तो पोर्ट संख्या समान होनी चाहिए।
उपरोक्त विधि Xampp सॉफ़्टवेयर द्वारा प्रदान की गई डिफ़ॉल्ट सेटिंग्स के लिए है।
आपको मेल भेजने के लिए पेपरक को इस सरल एप्लिकेशन का उपयोग करना चाहिए । और आपको कुछ भी कॉन्फ़िगर करने की आवश्यकता नहीं है।
बस इसे चलाएं और परीक्षण भेजें मेल भेजने का प्रयास करें:
test_sendmail.php
<?php
$to = "somebody@example.com";
$subject = "My subject";
$txt = "Hello world!";
$headers = "From: webmaster@example.com" . "\r\n" .
"CC: somebodyelse@example.com";
mail($to,$subject,$txt,$headers);
?>
और आप इसे देखेंगे:
मुझे आशा है कि आपके पास एक अच्छा दिन होगा। आप मुझे अधिक ट्यूटोरियल पिसथ सोक के लिए Youtube पर पा सकते हैं
चीयर!
आपको अपने सर्वर पर SMTP कॉन्फ़िगर करना होगा । आप Google द्वारा G Suite SMTP का उपयोग नि: शुल्क कर सकते हैं:
<?php
$mail = new PHPMailer(true);
// Send mail using Gmail
if($send_using_gmail){
$mail->IsSMTP(); // telling the class to use SMTP
$mail->SMTPAuth = true; // enable SMTP authentication
$mail->SMTPSecure = "ssl"; // sets the prefix to the servier
$mail->Host = "smtp.gmail.com"; // sets GMAIL as the SMTP server
$mail->Port = 465; // set the SMTP port for the GMAIL server
$mail->Username = "your-gmail-account@gmail.com"; // GMAIL username
$mail->Password = "your-gmail-password"; // GMAIL password
}
// Typical mail data
$mail->AddAddress($email, $name);
$mail->SetFrom($email_from, $name_from);
$mail->Subject = "My Subject";
$mail->Body = "Mail contents";
try{
$mail->Send();
echo "Success!";
} catch(Exception $e){
// Something went bad
echo "Fail :(";
}
?>
PHPMailer
यहाँ और अधिक पढ़ें ।
जैसा कि मैंने अपने व्यक्तिगत अनुभव में पाया कि विकास द्विवेदी के जवाब में बहुत कुछ ठीक है।
चरण 1 (php.ini फ़ाइल)
में स्थित php.ini फ़ाइल में xampp\php\php.ini
। सेटिंग्स को निम्न में बदलें:
extension=php_openssl.dll
[mail function]
sendmail_path =":\xampp7\sendmail\sendmail.exe -t"
mail.add_x_header=On
उनके सामने mail funciton
रख कर अन्य चर बंद ;
करें। जैसे;smtp_port=25
चरण 2 (sendmail.ini फ़ाइल)
Sendmail.ini में स्थित xampp \ sendmail \ semdmail.ini में निम्न परिवर्तन करें:
smtp_server=smtp.gmail.com
smtp_port=465
smtp_ssl=auto
auth_username=address@gmail.com
auth_password=YourPassword
चरण 3 (कोड)
एक php फ़ाइल बनाएँ और निम्नलिखित का उपयोग करें:
<?php
mail($to, "subject", "body", "From: ".$from);
?>
नोटिस
इस कोड का उपयोग आपके लोकलहोस्ट XAMPP और आपके जीमेल अकाउंट के मेल के लिए किया जाता है। यह कोड बहुत आसान है और मेरे लिए काम कर रहा है अपने स्वयं की कोशिश करो।
नीचे बदलें php.ini फ़ाइल में
SMTP=smtp.gmail.com
smtp_port=587
sendmail_from = your@gmail.com
sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t"
extension=php_openssl.dll
नीचे बदलें sendmail.ini फ़ाइल में
smtp_server=smtp.gmail.com
smtp_port=587
error_logfile=error.log
debug_logfile=debug.log
auth_username=yourmail@gmail.com
auth_password=your-gmail-password
force_sender=yourmail@gmail.com
ईमेल भेजने के लिए कृपया अपने PHP फ़ाइल में belove कोड लिखें
<?php
$to = "tomail@gmail.com";
$subject = "Test Mail";
$headers = "From: from_mail@gmail.com\r\n";
$headers .= "Reply-To: replytomail@gmail.com\r\n";
$headers .= "CC: theassassin.edu@gmail.com\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";
$message = '<html><body>';
$message .= '<img src="//css-tricks.com/examples/WebsiteChangeRequestForm/images/wcrf-header.png" alt="Website Change Request" />';
$message .= '<table rules="all" style="border-color: #666;" cellpadding="10">';
$message .= "<tr style='background: #eee;'><td><strong>Name:</strong> </td><td>Details</td></tr>";
$message .= "<tr><td><strong>Email:</strong> </td><td>Details</td></tr>";
$message .= "<tr><td><strong>Type of Change:</strong> </td><td>Details</td></tr>";
$message .= "<tr><td><strong>Urgency:</strong> </td><td>Details</td></tr>";
$message .= "<tr><td><strong>URL To Change (main):</strong> </td><td>Details</td></tr>";
$addURLS = 'google.com';
if (($addURLS) != '') {
$message .= "<tr><td><strong>URL To Change (additional):</strong> </td><td>" . $addURLS . "</td></tr>";
}
$curText = 'dummy text';
if (($curText) != '') {
$message .= "<tr><td><strong>CURRENT Content:</strong> </td><td>" . $curText . "</td></tr>";
}
$message .= "<tr><td><strong>NEW Content:</strong> </td><td>New Text</td></tr>";
$message .= "</table>";
$message .= "</body></html>";
if(mail($to,$subject,$message,$headers))
{
echo "Mail Send Sucuceed";
}
else{
echo "Mail Send Failed";
}
?>
आपको इसके लिए एक SMTP
सर्वर और एक पोर्ट को परिभाषित करना होगा। लाइव मेजबानों से मेल भेजने के अलावा सभी।
यह इस संबंध में एक उपयोगी कड़ी है ।
NB: बंदरगाह अप्रयुक्त होना चाहिए। कृपया ध्यान रखें कि, कुछ एप्लिकेशन
Skype
डिफ़ॉल्ट पोर्ट का उपयोग करते हैं और मेल भेजने से रोकता है।
इस काम को करने में केवल एक घंटे से अधिक का समय लगा। काम नहीं कर रहे सभी सुझावों के साथ एक ही परेशानी के लिए: आप अपने XAMPP inrerface में अपाचे को फिर से शुरू करना होगा! बस फिर से शुरू XAMPP अभ्यस्त काम !!
मैंने XAMPP लोकलहोस्ट से एक मेल भेजने के कई तरीके आज़माए, लेकिन चूंकि XAMPP में SSL सर्टिफिकेट नहीं है, इसलिए Gmail या इसी तरह के SMTP सर्विस प्रोवाइडर्स द्वारा ब्लॉक किया गया मेरा ईमेल अनुरोध।
फिर मैंने स्थानीय smtp सर्वर के लिए MailHog का उपयोग किया, जो आपको करने की आवश्यकता है वह बस इसे चलाएं। लोकलहोस्ट: 1025 smtp सर्वर के लिए है, लोकलहोस्ट: 8025 मेल सर्वर के लिए है, जहाँ आप भेजे गए ईमेल की जाँच कर सकते हैं।
यहाँ मेरा कोड है:
require_once "src/PHPMailer.php";
require_once "src/SMTP.php";
require_once "src/Exception.php";
$mail = new PHPMailer\PHPMailer\PHPMailer();
//Server settings
$mail->SMTPDebug = 3; // Enable verbose debug output
$mail->isSMTP(); // Send using SMTP
$mail->Host = 'localhost'; // Set the SMTP server to send through
$mail->Port = 1025; // TCP port to connect to
// $mail->Username = ''; // SMTP username
// $mail->Password = ''; // SMTP password
// $mail->SMTPAuth = true; // Enable SMTP authentication
// $mail->SMTPSecure = 'tls'; // Enable TLS encryption; `PHPMailer::ENCRYPTION_SMTPS` also accepted
//Recipients
$mail->setFrom('testtoo@testto.com', 'Mailer');
$mail->addAddress('testtoo@webbamail.com', 'Joe User'); // Add a recipient
// Content
$mail->isHTML(true); // Set email format to HTML
$mail->Subject = 'Here is the subject';
$mail->Body = 'This is the HTML message body <b>in bold!</b>';
$mail->AltBody = 'This is the body in plain text for non-HTML mail clients';
if(!$mail->Send()) {
echo "Mailer Error: " . $mail->ErrorInfo;
} else {
echo "Message sent!";
}
सभी उत्तरों के अलावा कृपया ध्यान दें कि sendmail.ini
फाइल में:
schem_password = यह है- Not -your-Gmail-password
नए Google सुरक्षा चिंता के कारण, आपको इस उद्देश्य के लिए एप्लिकेशन पासवर्ड बनाने के लिए इन चरणों का पालन करना चाहिए: