Autor Zpráva
nebob
Profil *
Dobrý den,
potřeboval bych se zeptat, zda tady někdo nemá zkušenost s vlastní php emailovou aplikací?
Přes co se to dělá standartně na Centru nebo na Seznamu, v manuálu phpka jsem našel IMAP rozšíření, ale nevím jest-li je to pravé ořechové???
Budu vděčný za jakýkoli postřeh či zkušenost...
Darker
Profil
IMAP se jen připojí na mailserver a stáhne z něj maily (nebo je tam pošle, teď nevím). Abys zprovoznil mail server potřebuješ nainstalovat něco jiného než PHP.
Davex
Profil
nebob:
s vlastní php emailovou aplikací
Co si pod tím představuješ a co to má všechno umět?
nebob
Profil *
Davex: To samé zhruba co např. Centrum mail. Odesílat a přijímat zprávy, mazat je. A vytvářet nové emailové schránky po registraci.
Krakatoa
Profil
Tu jsem řešil něco podobného:
http://diskuse.jakpsatweb.cz/?action=vthread&forum=9&topic=131254&page=-1
Taky jsem nerozuměl tomu, jak funguje mail server.
Pro pochopení je nutné vědět:
- jak funguje server - klient v PHP
- mail server je SMTP server (nešifrovaný běží na portu 25)
- najdi si plnou specifikaci SMTP
- pro snadnější pochopení začni zkoušet např. telnetem posílat na SMTP server mail (např. SMTP můžeš použít nějaký lokálně nainstalovaný)

SMTP server potřebuje port 25, nepude to na web hostingu, potřebuješ vlastní virtuální nebo fyzický server.
Není vhodné provozovat SMTP server v PHP, já to potřeboval jen na odchyt mailů a to jen na testování, ne na něco, co by bylo důležité.
Udělat plnohodnotný SMTP server není nic jednoduchého, být tebou, zvolil bych jiné řešení .-)

Darker:
Mail server (SMTP server) jde vytvořit v PHP .-)
nebob
Profil *
Krakatoa: Aha. A kdybych na server nainstaloval hotové řešení mail serveru SMTP a phpko by komunikovalo přes IMAP, myslíš, že to by bylo spolehlivé? Tzn. že bych programoval jen klienta v phpku. Nechce se mi totiž dělat moc v něčem jiném než v phpku, už tak do toho zapletu ajax a nebudu mít zas tolik extra času...
Joker
Profil
nebob:
Nechce se mi totiž dělat moc v něčem jiném než v phpku, už tak do toho zapletu ajax a nebudu mít zas tolik extra času
V tom případě co to zjednodušit úplně a nainstalovat si nějaké hotové řešení?
Mike8748
Profil
nebob:
php klienta pro mail? to jako SquirrelMail, RoundCube a podobny ?
Darker
Profil
Krakatoa:
Mail server (SMTP server) jde vytvořit v PHP .-)
Nevěřím.
Ugo
Profil
Nevěříš? věř! PHPko umí práci s binárníma datama = umí udělat vše
nebob
Profil *
Já to upřesnim, možná jsem to napsal nepřesně. Stačí mi vlastní uživatelské prostředí, toť vše.
Davex
Profil
nebob:
Stačí mi vlastní uživatelské prostředí, toť vše.
Pokud nepotřebuješ „vytvářet nové emailové schránky po registraci “ a poštovní přihrádky budou na jiném poštovním serveru, tak použij něco z [#8] a přihodím ještě Horde.
Darker
Profil
To že PHP umí pracovat se soubory binárně určitě neznamená, že dokáže přijmout a zpracovat mailové požadavky. Lze emaily načítat ze SMTP serveru ale pouze v PHP mailserver jako seznam.cz určitě udělat nejde.
Krakatoa
Profil
Darker:
Nemáš pravdu. PHP skript dokáže přijmout a zpracovávat mailové požadavky. V PHP lze naprogramovat něco jako mailserver na seznamu. PHP skript dokáže pracovat jako server.
Funkční příklad, kdy PHP skript funguje jako server, máš tu: http://www.webnt.cz/8-websocket/
Davex
Profil
Darker:
To že PHP umí pracovat se soubory binárně určitě neznamená, že dokáže přijmout a zpracovat mailové požadavky.
Na běžném webhostingu to nepůjde. Na serveru, který budeš mít pod kontrolou to pomocí soketových funkcí za určitých podmínek dokáže. Ale pokud se zvolí běh na Linuxu, tak musí PHP s tímto skriptem běžet s právem roota a než si to celé programovat, tak je rovnou jednodušší si pod tím rootem nainstalovat jako poštovní úřad Postfix, Exim nebo Sendmail a k tomu nějakou tu antivirovou + antispamovou ochranu a webové rozhraní.

pouze v PHP mailserver jako seznam.cz určitě udělat nejde
Ano, třeba jenom takovou malou komponentu typu replikovaného souborového systému SeznamFS v PHP neuděláš.
Darker
Profil
Davex:
A jak přesně může PHP skript přijmout email? Pokud se nepletu, emaily se posílají na jiném portu než HTTP požadavky a PHP je normálně nevyhodnocuje.
Krakatoa
Profil
Darker:
"pomocí soketových funkcí"
Darker
Profil
Hezký. A co ten skript přiměje, aby se spustil?
Aha, už začínám chápat. Snad.
A pokud ano, pak by to možná na hostingu Endora šlo.
Krakatoa
Profil
Darker:
A pokud ano, pak by to možná na hostingu Endora šlo.
Nešlo. Nepřipojíš se z venku na port.
Jediné řešení je min. virtuální server nebo zkoušet doma.
Darker
Profil
Krakatoa:
Nepřipojíš se z venku na port.
Ajo. A u vlastního serveru bych pro SMTP port povolil přijmutí požadavku, nebo jak?
Davex
Profil
Darker:
A u vlastního serveru bych pro SMTP port povolil přijmutí požadavku, nebo jak?
Na vlastním serveru bys mohl skript spustit jako démona pod uživatelem, který má dostatečná práva k tomu, aby se mohl posadit na TCP port 25 a poslouchat. V Linuxu nemůže program spuštěný pod běžným uživatelem naslouchat na rezervovaných portech menších než 1024 a z PHP skriptu běžícího na webserveru nespustiš démona, který by po skončení skriptu zůstal běžet.
nebob
Profil *
Díky za zajímavou debatu. Potřeboval bych zodpovědět ještě jednu otázku: Použiju jiný funkční SMTP server, a připojím se na něj z mé aplikace, stačí mi IMAP????? ...potřebuju odesílat maily, číst maily a mazat je, ale zároveň potřebuju samostatnou aplikaci, která bude součást většího systému, takže se nemůžu spokojit s template pro např. Icewarp. Díky za odpověď.
Davex
Profil
1) Pro odesílání e-mailů použiješ funkci mail() nebo připojení soketovými funkcemi na SMTP server.
2) Pro vyzvedávání zpráv z poštovního serveru, kde budou poštovní přihrádky uživatelů, použiješ IMAP.

Odesílání a příjem e-mailů spolu tak úplně nesouvisí a oboje chodí odlišnými cestami. Poštovní servery mezi sebou komunikují protokolem SMTP, ale pro přístup do přihrádky se používá IMAP4 (nebo POP3).
nebob
Profil *
ok, dík za odpověď.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0