Portál AbcLinuxu, 10. května 2024 08:16


Dotaz: Apache na localhost + PHP Mail() (Debian)

29.6.2016 16:21 mica
Apache na localhost + PHP Mail() (Debian)
Přečteno: 420×
Odpovědět | Admin
Dobrý den,

rozhodl jsem se do internetové stránky přidat kontaktní formulář, který by zadané údaje odesílal pomocí php funkce Mail() na zadanou adresu. Řekl jsem si, že je to jen jedna jednoduchá věc (vidím, že není), kterou bych nějak podle návodů zvládl, i když s php nebo čímkoli serverovým nemám žádné zkušenosti. Chtěl bych si nejprve funkčnost ověřit na vlastním počítači, takže jsem nainstaloval php, Apache a sendmail. Instalace, zdá se, proběhla v pořádku (jen sendmail poněkud brblal), tak jsem svůj skript nakopíroval do /var/www/html a do html kódu formuláře zadal absolutní cestu k němu (stránka s formulářem je v domovském adresáři). Jenže když v pokusné stránce formulář vyplním a stisknu tlačítko Odeslat, vyskočí na mě v prohlížeči okno nabízející stažení onoho php souboru. Tak jsem hledal a našel, že musím Apache přimět ke zpracování php skriptů pomocí "AddHandler php5-script .php", zapsaného do souboru httpd.conf. Takový soubor na disku nemám, tak jsem to zapsal do /etc/apache2/apache2.conf, ale stejně to žádný účinek nemělo. Jak to tedy mám udělat, abych mohl (na Debianu) otestovat nějaký php skript?

Děkuji.
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

29.6.2016 16:43 alkoholik | skóre: 40 | blog: Alkoholik
Rozbalit Rozbalit vše Re: Apache na localhost + PHP Mail() (Debian)
Odpovědět | | Sbalit | Link | Blokovat | Admin
Jedes apache z debianich baliku?
Mas nainstalovany balik libapache2-mod-php5?
29.6.2016 21:45 mica
Rozbalit Rozbalit vše Re: Apache na localhost + PHP Mail() (Debian)
Z balíku. Modul mám.
29.6.2016 22:06 NN
Rozbalit Rozbalit vše Re: Apache na localhost + PHP Mail() (Debian)
Odpovědět | | Sbalit | Link | Blokovat | Admin
do html kódu formuláře zadal absolutní cestu k němu (stránka s formulářem je v domovském adresáři)
Mas ten adresar pritupny ve virtualhostu? Ma sptravna prava? Nebylo by jednoduzsi ho nalinkovat? Jak to vypada v logu?
30.6.2016 09:44 mica
Rozbalit Rozbalit vše Re: Apache na localhost + PHP Mail() (Debian)
Mas ten adresar pritupny ve virtualhostu?
Já myslím, že jo, ale pro jistotu: jak to zjistím?
Jak to vypada v logu?
Kterém?
30.6.2016 12:01 mica
Rozbalit Rozbalit vše Re: Apache na localhost + PHP Mail() (Debian)
Odvolávám otázky. Skript "funguje", pokud pokusnou stránku zobrazím přes http://localhost/, (místo toho jsem ji zobrazoval jako lokální soubor (file:///file:///var/www/html/kontakt.html) ).
Nicméně to je jen první problém vyřešený. Ten druhý a podstatný je se sendmailem. Při jeho konfiguraci mi napsal: WARNING: local host name (xxy) is not qualified; see cf/README: WHO AM I?. To byl důvod, proč nic neodesílal. Našel jsem, že hostname má být ve tvaru např. yourdomain.com, tak jsem to přepsal v /etc/hostname (na xxy.net). Pak už jsem v logu /var/mail.log po odeslání formuláře žádné chyby nenašel (takže se možná e-mail odeslal), ale zase jsem zjistil, že přepsáním své domény se mi vymazal obsah souboru /etc/resolv.conf, takže nemůžu zobrazit internetové stránky. Jak tedy vyřešit tento rozpor?
Další věc je, že sice v logu už nejsou chyby, ale na zadanou adresu (na Seznamu) žádné e-maily nedorazily. Jak teď poznám, kde se stala chyba?
30.6.2016 13:08 GeorgeWH | skóre: 42
Rozbalit Rozbalit vše Re: Apache na localhost + PHP Mail() (Debian)
...ale na zadanou adresu (na Seznamu) žádné e-maily nedorazily.

a ani nikdy nedorazia, pretoze (skoro) vsetky ip adresy isp su v blacklistoch a smtp servery spojenia z tychto adries rovno zahadzuju.
2.7.2016 10:00 mica
Rozbalit Rozbalit vše Re: Apache na localhost + PHP Mail() (Debian)
To znamená, že přes sendmail se z formulářů na localhost nedá odesílat pošta do internetu?
Chytrex avatar 2.7.2016 12:38 Chytrex | skóre: 30 | Bohumín
Rozbalit Rozbalit vše Re: Apache na localhost + PHP Mail() (Debian)
dá ale nebude to tak jednoduché.. potřebuješ mít v pořádku domény, reverzní záznam atd abys vypadal důvěryhodně i pro public mailservery.. Je to na delší povídání amoc v tom expert nejsem. Jen vím že to je celkem obsáhlé téma.
Hrdý člen KERNEL ULTRAS .:. define QUESTION ((bb) || !(bb)) .:. Odmítám vaši realitu a nahrazuji ji svou vlastní..
2.7.2016 16:39 mica
Rozbalit Rozbalit vše Re: Apache na localhost + PHP Mail() (Debian)
Tak to se na lokální testování vybodnu. A co na hostingových serverech? Tam mi php funkce Mail() fungovat bude (za předpokladu, že je povolená) nebo si musím zjišťovat jejich nastavení a podle toho vybrat hosting?
2.7.2016 14:51 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Apache na localhost + PHP Mail() (Debian)
A nebo neodesílat e-maily přímo, ale přes svého poskytovatele e-mailových služeb (např. přes ISP).

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.