Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: PHP i zewnetrzny serwer SMTP (serwery pod windowsem)
Forum PHP.pl > Forum > PHP
grohu
Mam problem ze skonfiguraniem pod windowsem serwera apache z php
tak zeby listy wysylane przez funkcje mail() korzystaly z zewnterznego
serwera.

Uzywam serwera "Ability mail server" i phpTriad (apache+php+mysql).

Musze ustawic uzywanie zewnetrzengo serwera bo listy wysylane z php
funkcja mail() standardowo nie maja swojego ID.
A listy wysylane przez oddzielny serwer maja ID, tak wiec jesli skonfigurowalem
klienta pocztowego podajac mu adres SMTP "localhost" to listy przesylane
sa z tego serwera uzywajac lokalnego serwera pocztowego...

w pliku php.ini znalazlem konfiguracje SMTP:

Kod
[mail function]

SMTP  =    localhost;for win32 only

sendmail_from    =    me@localhost;for win32 only
;sendmail_path    =  ;for unix only, may supply arguments as well (default is 'sendmail -t -i')


i mimo ze jest ustawione localhost to listy nie sa wysylane z zewnetrznego serwera.
Probowalem kilku kombinacji alpejskich, np.:
Kod
SMTP  =    localhost:25

SMTP  =    http://localhost:25

SMTP  =    127.0.0.1

SMTP  =    127.0.0.1:25

SMTP  =    http://127.0.0.1:25

or w sendmail_from podajac sciezke do zainstalowanego zewnetrznego serwera,
ale nic sie nie zmienilo.

Czy ktos wiec jak TO skonfigurac questionmark.gif?
Albo moze sa inne serwery ktore beda ze soba wspolpracowaly, jesli tak to prosze o
link...

Wielkie DZIEKI kazdemu kto mi pomoze, bo to problem potrzebny mi do skonczenia
pracy licencjackiej (klient pocztowy na stronie WWW) !!!
Bakus
Niestety nie ejst możliwe skonfigurowanie php pod windowsem do wysyłania poczty przez zewnętrzny serwer...

Jedyną możliwością jest zaimplementowanie do skryptu klasy do obsługi SMTP...

Jeżeli chcesz mogę Ci ją podesłać, aczkolwiek zaznaczam, że można znaleść takie klasy w sieci... (SMTP.inc.php)
Liko
Cytat
Niestety nie ejst możliwe skonfigurowanie php pod windowsem do wysyłania poczty przez zewnętrzny serwer...

Jedyną możliwością jest zaimplementowanie do skryptu klasy do obsługi SMTP...

Jeżeli chcesz mogę Ci ją podesłać, aczkolwiek zaznaczam, że można znaleść takie klasy w sieci... (SMTP.inc.php)


Chyba coś ci się pomyliło Bakus. Własnie pod windowsem można skonfigurować zewnetrzny serwer SMTP, ale trzeba znaleść taki, który nie wymaga autoryzacji, a w tym to już problem.
Bakus
Napisałeś, że musisz skonfigurować php pod windows do wysyłania poczty przez zewnętrzny serwer - pierwsza moja reakcja - nikt o zdrowych zmysłach nie stawia serwera SMTP bez autoryzacji... Z tąd właśnie taka odpowiedź...

...co do konfiguracji...
Nigdy nie stosowałem tego typu rozwiązań, bo uznaję, że jeżeli już ktoś chce wysyłać pocztę, to niech wysyła podając swój adres e-mail, a nie konto na moim kochanym serwerku...

Tylko dzięki temu mów serwer nie trafił na czarne listy... ...cały testowy spam odrzucał... to samo robił z pocztą wysyłaną przez mail...

Ja na Twoim miejscu naprawdę bym poszukał tej klasy do SMTP... używa się jej prosto, a w efekcie uzyskujesz skrypt, który ruszy na 99,9% serwerów, a nie tylko na wybranych...
GeoS
Liko i Bakus: obaj daliscie ciala na calej linii :!:

Po pierwsze php na Win32 ma mail support. Oznacza to, ze jest w stanie samo wygenerowac email, ale potrzebuje "transportu" naszej korespondencji. Moze to byc serwer lokalny lub zdalny - roznicy nie ma.

Cytat
Ostrzeżenie

Implementacja funkcji mail() w systemie Windows różni się od implementacji w systemie Unix. Po pierwsze, funkcja nie używa lokalnych programów do komponowania wiadomości pocztowych, tylko operuje na połączeniach socketowych, co oznacza, że do działania potrzebny jest Agent Transferu Poczty (MTA), który nasłuchuje na odpowiednim porcie. (Agent może znajdować się zarówno na maszynie lokalnej, jak i zdalnej). Po drugie, nagłówki użytkownika, takie jak From:, Cc:, Bcc: oraz Date: nie są w pierwszej kolejności interpretowane przez MTA, gdyż wcześniej są parsowane przez php. php < 4.3 obsługiwał spośród wyżej wymienionych tylko nagłówek Cc: (wymagana była odpowiednia wielkość liter); natomiast php <= 4.3 obsługuje już wszystkie wyżej wymienione nagłówki i nie wymaga odpowiedniej wielkości liter.


Poza tym w kwestii autoryzacji - wystarczy zastrzec, ze nasze konto "przyjmuje" poczte tylko z danego hosta o danym IP (odrzucajac "obce") i wszystko jest OK smile.gif

Da sie to postawic dokladnie na kazdym serwerze SMTP :!:
grohu
po pierwsze: mi jest to potrzebne tylko do pisania pracy, a nie do celowow uzytkowych...
po drugie: juz doszedlem do wniosku ze php wykorzystuje ten zewnetrzny serwer przy wysylaniu, bo jesli serwer pocztowy jest wylaczony to mail sie nie wysle (hmm. z tym supportem to prawda, kiedys sie wysylaly bez serwera pocztowego...) .

mi chodzi tylko o to zeby listy wysylane z funkcji mail() mial swoje ID,

po polaczeniu przez imap_open() mozna pobrac naglowek listu i tak jest tez jego ID, listy wysylane przez php nie maja tego ID i chcialbym to zmienic...
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.