Jump to content
  • 0

Problem z wysyłaniem maili.


Ethorious

Question

Jak zapewne wiecie presta ma problemy z wysłaniem maili do klientów. Ale u mnie nie działa już kompletnie nic. Ani smtp (google, i email spod domeny) ani wysylanie przez php. Wchodząc w konfiguruj->zaawansowane->email włączając Use /usr/sbin/sendmail (recommended; works in most cases) otrzymuje błąd 

Błąd: proszę sprawdzić konfigurację

Expected response code 220 but got an empty response

natomiast właczajac uzywaj wlasnych ustawien smtp i wpisujac konfiguracje (probowalem juz roznych i google i domenową) otrzymuje taki błąd:

Błąd: proszę sprawdzić konfigurację

Connection could not be established with host smtp.gmail.com :stream_socket_client(): unable to connect to tcp://smtp.gmail.com:587 (Network is unreachable)

Czytałem podobne problemy tu jak i na innych forach poradnikach... nie wiem co sie dzieje nic nie moze tego naprawic. 

Probowałem już rożnych sposobow edytowania kodu zrodlowego, sposobow przez panel, mialem wpisane haslo podczas wysylania testowej wiadomosci, adres email jest taki sam podany w smtp jak i w kontakcie ze sklepem. nic nie pomaga. prosze o pomoc bo odchodze od zmysłów.

Informacja o serwerze Linux #1 SMP Mon Dec 7 03:53:01 EST 2020 x86_64

Wersja oprogramowania serwera: Apache

Wersja PHP: 7.3.26

Limit pamięci: 1024M

Maksymalny czas wykonywania: 600

Maksymalny rozmiar pliku do przesłania: 50M

Wersja PrestaShop: 1.7.7.2

 

EDIT1: ok dowiedziałem się, od hostingu że przez smtp już sobie wiadomosci nie powysylam bo jest zablokowana ta opcja, mozna wysylac tylko i wylacznie z poziomu skryptow php. tylko teraz jak naprawic ten błąd czy moglby ktos chociaz mnie nakierowac?

Link to comment
Share on other sites

6 answers to this question

Recommended Posts

  • 0

Nie wiemy  tego żeby presta miała problemy z wysyłką maili do klientów, zazwyczaj to osoby konfigurujące mają problem z konfiguracją i tam jest problem a nie w samej prescie.

Presta od wersji 1.7.7 nie wspiera już wysyłania przez funkcje mail() w php ponieważ filtry spamowe bardzo często nie przepuszczają takich maili więc coś się osobom z hostingu pomyliło.

Założę się że próbujesz to zrobić w sposób niewłaściwy i stąd problemy.

Zacznijmy od tego żeby poprawnie ustawić smtp czyli jeśli Twój sklep jest np. pod adresem: adresmojegosklepu.pl to tworzysz skrzynkę email w domenie sklepu typu [email protected] i ustawiasz smtp do tej właśnie skrzynki wtedy masz pewność że filtry antyspamowe nie będą blokowały emaili, ale jak chcesz wysyłać np. przez gmaila to już filtry widzą że wysyła gmail ale podpisuje się jako sklep i cos tu nie gra, druga sprawa sam gmail w standardzie blokuje smtp i musisz w jego ustawieniach pozmieniać dostępy z zewnętrznych aplikacji.

Link to comment
Share on other sites

  • 0

Pięknie dziękuje za odpowiedz! Ciesze sie ze kto kolwiek zechciał mnie wysłuchać bo mam z tym dzis dość duży problem. Adres strony to https://www.crafting4you.nl . Otóż jak ustawiam dostep przez smtp tez wyskakuje problem taki jak wkleilem powyzej. Poczte ktora mam zalozoną na domenie to [email protected] oraz [email protected] ani jedna ani druga nie dziala z konfiguracją ktorą do niej wpisuje. Niestety wyskakuje błąd 

Błąd: proszę sprawdzić konfigurację

Connection could not be established with host smtp03.hostnet.nl :stream_socket_client(): unable to connect to tcp://smtp03.hostnet.nl:587 (Connection refused)

email Wyślij wiadomość testową

siedze na tym od rana i nie moge tego naprawić... gosc z hostingu powiedzial mi ze smtp jest zablokowane ale to holender to wcale bym sie nie zdziwil jak gadał głupoty.

Bez nazwy-2.jpg

Bez nazwy-3.jpg

wlaczony tryb debugowania zwraca nastepujace dane:

w zakladce doctrine:

PrestaShopBundle\Entity\Tab

The association PrestaShopBundle\Entity\Tab#tabLangs refers to the owning side field PrestaShopBundle\Entity\TabLang#tab which does not exist. 

 

 

Bez nazwy-4.jpg

Bez nazwy-5.jpg

Edited by Ethorious (see edit history)
Link to comment
Share on other sites

  • 0

Komunikat mówi o braku połączenia, na początek spróbowałbym zamienić smtp03.hostnet.nl na  smtp.crafting4you.nl ale jeszcze wcześniej sprawdź czy hasło wpisujesz poprawnie ponieważ często podczas kopiowania zdarza się ze coś utnie. Inna opcja to może coś być z curl nie tak na serwerze.

Link to comment
Share on other sites

  • 0

niestety to również próbowałem. zwraca błąd:

Błąd: proszę sprawdzić konfigurację

Błąd: proszę sprawdzić konfigurację

Connection could not be established with host smtp.crafting4you.nl :stream_socket_client(): unable to connect to tcp://smtp.crafting4you.nl:587 (Connection refused)

hasło jest na 100% dobre ponieważ kopiowałem, wpisywałem próbowałem już miliony razy.

To znalazłem na stronie hostingu: (translator google)

Wysyłanie wiadomości e-mail z Twojej witryny AKTUALIZACJA 2 MIESIĄCE TEMU LICZBA UŻYTKOWNIKÓW, DLA KTÓRYCH JEST TO PRZYDATNE: 2 Z 2 Kiedy używasz skryptu poczty e-mail PHP do wysyłania wiadomości e-mail ze swojej witryny internetowej w Hostnet, może się zdarzyć, że wiadomości e-mail nie zostaną dostarczone. Możesz rozwiązać ten problem, ustawiając prawidłowy adres „od” i „koperta z” w swoim skrypcie e-mail. Musi to być istniejący adres e-mail. Od i koperta z adresu Poniżej znajduje się przykład prawidłowego skryptu poczty e-mail. W tym przykładzie dostosowujesz zmienną „[email protected]”. Robisz to, wstawiając „-f” przed adresem e-mail. Na przykład: „[email protected]”. Upewnij się, że między „-f” a adresem e-mail nie jest spacja.

źródło: https://helpdesk.hostnet.nl/hc/nl-nl/articles/360015074777-E-mail-versturen-vanaf-je-website

<?PHP
 

$onderwerp = "E-mailonderwerp";
$inhoud = "Mijn tekstbericht.";
$ontvanger = "[email protected]";
$afzender = "[email protected]";
$headers = array();
$headers[ ] = "MIME-Version: 1.0";
$headers[ ] = "Content-type: text/plain; charset=utf-8";
$headers[ ] = "From: Afzendernaam <{$afzender}>";
$headers[ ] = "Reply-To: Afzendernaam <{$afzender}>";
$headers[ ] = "X-Mailer: PHP/".phpversion();
mail($ontvanger, $onderwerp, $inhoud, implode("\r\n", $headers), "-f".$afzender);

?>

po prostu ręce opadają ... zapłace komuś jak mi z tym pomoze naprawdę... 

Edited by Ethorious (see edit history)
Link to comment
Share on other sites

  • 0

Zaraz sprawdzę. Myślisz że kropka może być takim znakiem?

Edit: Niestety hasło musi zawierac jeden z ponizszych znaków 

!"#$%&'()*+,-./\:;<=>?@[]^_`{|}~

Nie działa... nie wiem już co robić zaraz chyba kupie inny serwer bo dostaje bzika od weekendu. Jestem w kropce, nic nie da się zrobić.

Edit2: Sprawdziłem czy funkcja mail jest dostepna takim oto kodem.

<?php 
function sprawdz($funkcja_mail) {   
    if (function_exists($funkcja_mail)) { 
        echo "Funkcja <strong>$funkcja_mail</strong> jest dostepna na tym serwerze."; 
    } 
    else { 
        echo "Funkcja <strong>$funkcja_mail</strong> nie jest dostepna na tym serwerze."; 
    } 
} 
// sprawdza, czy funkcja mail() jest włączona
sprawdz('mail'); 
?>

system zwrocil odpowiedz "Funkcja mail jest dostepna na tym serwerze."

Edit3:

Po długiej i ciężkiej walce osiagnalem polowiczne zwyciestwo ale kosztowalo mnie to kolejne euro na nowy serwer.

Kupiłem nowy serwer i dokladnie z tymi samymi danymi otrzymalem ponizszy komunikat.

Niestety presta w obecnej wersji usadziła mnie w niezłą pułapkę i trzeba było kupić serwer ktory obsluguje mozliwosc smtp z poziomu www. i wszystko działa (oprocz funkcji mail() php oczywiscie). dziekuje za pomoc!

 

jacek.jpg

Edited by Ethorious (see edit history)
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...