webForumDet fria alternativet

Slå på mail()-funktionen?

PHPur PHP

23 svar · 462 visningar · startad av bassebhu

Medlem sedan nov. 20016 480 inlägg
Frågan#1

Tjaaa!

Sitter och försöker skicka php-mail från min lokala apache-server. Jag har php och allt installerat men det kommer inga mail när jag kör koden... Jag har testat alla typer av mail()-snuttar som har funkat förut på webbhotell. Allt ifrån avancerade till såna kopierade direkt från manualen.

Jag antar att jag behöver ställa in nånting i min server/php.ini. smtp eller liknande...

Någon vet vad jag bör göra? :)

Kan fråga en till sak samtidigt. När något blir fel så får jag inga felmeddelanden. Det tar bara lång tid att ladda och sen kommer en vit sida upp. Hur slår jag på så att jag får parse errors och sånt som jag fått förut på webbhotell...?

Tack för svar! :)

Medlem sedan juni 20015 009 inlägg
#2

In i php.ini och leta upp smtp och lägg till den smtp-server du använder i ditt mailprogram.

Medlem sedan sep. 20005 700 inlägg
#3

Kontrollera att port 25 inte är blockerad av din ISP.

Medlem sedan nov. 20016 480 inlägg
#4

Qimen skrev:

In i php.ini och leta upp smtp och lägg till den smtp-server du använder i ditt mailprogram.

Jag öppnade php.ini och sökte på smtp. Gav två resultat. Båda i samma "mening":

[mail function]
; For Win32 only.
SMTP = localhost
smtp_port = 25

For Win32 only låter inte så bra med tanke på att jag sitter på en mac. Ändå där jag ska pilla?

Fanns lite mer i sektionen mail:

; For Win32 only.
;sendmail_from = me@example.com

; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
;sendmail_path =

; Force the addition of the specified parameters to be passed as extra parameters
; to the sendmail binary. These parameters will always replace the value of
; the 5th parameter to mail(), even in safe mode.
;mail.force_extra_parameters =

Eller är det detta jag ska pilla i?:
; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
;sendmail_path =

Tack! :)

Medlem sedan juni 20015 009 inlägg
#5

Gein skrev:

Kontrollera att port 25 inte är blockerad av din ISP.

Det spelar väl ingen roll? Inte om han använder den smtp-server som ISPn bestämmt. Det är ju ingen direkt mailserver han ska köra.

Medlem sedan nov. 20016 480 inlägg
#6

Gein skrev:

Kontrollera att port 25 inte är blockerad av din ISP.

Det är mycket möjligt att det är. Har tele2 och använder i mitt mail-prog: smtp.tele2.se

Hur göra då?

Medlem sedan juni 20015 009 inlägg
#7

bassebhu skrev:

Qimen skrev:

In i php.ini och leta upp smtp och lägg till den smtp-server du använder i ditt mailprogram.

Jag öppnade php.ini och sökte på smtp. Gav två resultat. Båda i samma "mening":

[mail function]
; For Win32 only.
SMTP = localhost
smtp_port = 25

For Win32 only låter inte så bra med tanke på att jag sitter på en mac. Ändå där jag ska pilla?

Fanns lite mer i sektionen mail:

; For Win32 only.
;sendmail_from = me@example.com

; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
;sendmail_path =

; Force the addition of the specified parameters to be passed as extra parameters
; to the sendmail binary. These parameters will always replace the value of
; the 5th parameter to mail(), even in safe mode.
;mail.force_extra_parameters =

Eller är det detta jag ska pilla i?:
; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
;sendmail_path =

Tack! :)

Hehe, jag har inte hunnit konfa mail på min mac/ibook heller än så hur du ska skriva där vet jag inte riktigt. I win är det iaf bara till att skriva en smtp-serveradress.

Medlem sedan juni 20015 009 inlägg
#8

Jag gissar på att man måste installera sendmail (såvidare det inte redan är installerat) och ändra i det programmets config till din smtpserver.

Medlem sedan sep. 20005 700 inlägg
#9

Qimen skrev:

Gein skrev:

Kontrollera att port 25 inte är blockerad av din ISP.

Det spelar väl ingen roll? Inte om han använder den smtp-server som ISPn bestämmt. Det är ju ingen direkt mailserver han ska köra.

Ja, men då får man alltså ange sin leverantörs smtp-server snarare än localhost.

Medlem sedan juni 20015 009 inlägg
#10

Gein skrev:

Qimen skrev:

Gein skrev:

Kontrollera att port 25 inte är blockerad av din ISP.

Det spelar väl ingen roll? Inte om han använder den smtp-server som ISPn bestämmt. Det är ju ingen direkt mailserver han ska köra.

Ja, men då får man alltså ange sin leverantörs smtp-server snarare än localhost.

Mm, det är klart. :)

Medlem sedan sep. 20005 700 inlägg
#11

Men som sagt, att sätta utgående smtp-server gick ju tydligen bara under windows-plattformen.
Och då blir det väl problem? Om det inte går att konfigurera sendmail att utnyttja en annan smtp-server som proxy (internetleverantörens) på något sätt.

Medlem sedan nov. 20016 480 inlägg
#12

bytte till smtp.tele2.se där det stod WIN men verkar inte ha hjälpt.

ang. felmeddelanden då? hur sätter jag på det? :) jag är inte ofelbar på phpbiten nämligen (till skillnad från alla andra områden alltså ;) §jr :p )

Medlem sedan mars 20025 907 inlägg
#13

bassebhu skrev:

ang. felmeddelanden då? hur sätter jag på det? :) jag är inte ofelbar på phpbiten nämligen (till skillnad från alla andra områden alltså ;) §jr :p )

error_reporting = E_ALL
och
display_errors = On

Glöm inte att starta om apache efter ändringarna.

Medlem sedan nov. 20016 480 inlägg
#14

Peeer skrev:

error_reporting = E_ALL
och
display_errors = On

Glöm inte att starta om apache efter ändringarna.

Det var inte svårare än så alltså :) tack :) funkade direkt!

Medlem sedan juni 20015 009 inlägg
#15

För att fixa sendmail så gör såhär:

1. Öppna /etc/postfix/master.cf med ex. pico i terminalen.
2. Ta bort # framför smtp på rad 77.
3. Öppna sedan /etc/hostconfig och ändra raden "MAILSERVER=-AUTOMATIC-" till "MAILSERVER=-YES-", så att smtp-servern är uppe alltid.
4. Kör sedan: sudo postfix reload

Det var iaf första biten, ska leta vidare och se hur man ändra smtp adress.

/r Bah, Os x äger! http://www.roadstead.com/weblog/Tutorials/PostfixEnabler.html :)

Medlem sedan sep. 20005 700 inlägg
#16

Qimen skrev:

För att fixa sendmail så gör såhär:

1. Öppna /etc/postfix/master.cf med ex. pico i terminalen.
2. Ta bort # framför smtp på rad 77.
3. Öppna sedan /etc/hostconfig och ändra raden "MAILSERVER=-AUTOMATIC-" till "MAILSERVER=-YES-", så att smtp-servern är uppe alltid.
4. Kör sedan: sudo postfix reload

Det var iaf första biten, ska leta vidare och se hur man ändra smtp adress.

/r Bah, Os x äger! http://www.roadstead.com/weblog/Tutorials/PostfixEnabler.html :)

Fast det där är ju postfix och inte sendmail.

Medlem sedan nov. 20016 480 inlägg
#17

jag körde in nåt som hette mail wrapper. det verkade jättebra. men inte kom det nåt mail för det. ska kolla på det du skrev sen qimen ;) tack

Medlem sedan juni 20015 009 inlägg
#18

Gein skrev:

Qimen skrev:

För att fixa sendmail så gör såhär:

1. Öppna /etc/postfix/master.cf med ex. pico i terminalen.
2. Ta bort # framför smtp på rad 77.
3. Öppna sedan /etc/hostconfig och ändra raden "MAILSERVER=-AUTOMATIC-" till "MAILSERVER=-YES-", så att smtp-servern är uppe alltid.
4. Kör sedan: sudo postfix reload

Det var iaf första biten, ska leta vidare och se hur man ändra smtp adress.

/r Bah, Os x äger! http://www.roadstead.com/weblog/Tutorials/PostfixEnabler.html :)

Fast det där är ju postfix och inte sendmail.

Ne, jag vet. Läste om det, sendmail kommer inte med senaste os x utan då är det postfix som gäller. Tror inte det spelar någon roll, iof man lär ju behöva veta vilket kommando man ska skriva i php.ini.

Medlem sedan sep. 20005 700 inlägg
#19

se.php.net skrev:

If you use another mail program, such as qmail or postfix, be sure to use the appropriate sendmail wrappers that come with them.

http://se.php.net/mail

Men återigen, ponera att gränssnittet mellan mailserver och php fungerar, hur ska mailen komma ut om port 25 är blockerad? (Dom måste ju isåfall på något sätt gå via internetleverantörens relay-server.)

Medlem sedan juni 20015 009 inlägg
#20

Gein skrev:

se.php.net skrev:

If you use another mail program, such as qmail or postfix, be sure to use the appropriate sendmail wrappers that come with them.

http://se.php.net/mail

Men återigen, ponera att gränssnittet mellan mailserver och php fungerar, hur ska mailen komma ut om port 25 är blockerad?

Port 25 blockar bara pop3-server, itne smtp. Hur ska du annars kunna skicka mail via din emailklient? Det php försöker göra är att skicka ett mail via en "vanlig" klient så att säga.

136 ms totalt · 3 externa anrop · v20260731065814-full.25f56b17
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)