• User Newbie

    problemi con la funzione mail() di PHP

    salve a tutti,
    normalmente non posto quesiti, in quanto cercando nelle risposte trovo già le dritte necessarie, ma questa volta....

    Dopo aver implementato la funzione mail() in un applicativo PHP con EASYPHP, e testata con successo sul mio indirizzo e-mail (@tele2.it) , ho provato ad inviare una mail ad un altro indirizzo (@tin.it) ottenendo il seguente risultato:

    Warning: mail(): SMTP server response: 473 [email protected] relaying prohibited. You should authenticate first in c:\programmi\easyphp1-8\www\archivio_cat\arc_petiz.php on line 198

    Non ho ben chiaro cosa devo "authenticate first". Chi mi può aiutare?
    Grazie in anticipo


  • User Attivo

    Ho l'impressione che tu non stia usando tele2 come smtp o che tu non stia usando la porta 25 con un altro smtp diverso da tele2. Almeno dai pochi dati che hai fornito...


  • User Newbie

    ciao greybear,

    questa è la mia configurazione (php.ini)

    [mail function]
    ; For Win32 only.
    ;SMTP = localhost **** originario
    SMTP = smtp.tele2.it **** attuale
    ; For Win32 only.
    ;sendmail_from = [EMAIL="[email protected]"][email protected][/EMAIL] ****originario
    sendmail_from = [EMAIL="[email protected]"][email protected][/EMAIL] ****attuale
    ; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
    ;sendmail_path =

    tieni conto inoltre che la funzione mail() sul mio indirizzo funziona perfettamente, riesco anche a mandarmi e ricevere mail in html. Tutto questo in locale, (uso EASYPHP8-1) con collegamento internet attivo, da cui scodo la posta.


  • User Attivo

    Ciao frbl,

    [mail function]
    ; For Win32 only.
    SMTP = localhost
    smtp_port = 25
    
    ; For Win32 only.
    ;sendmail_from = [email protected]
    
    ; For Unix only.  You may supply arguments as well (default: "sendmail -t -i").
    sendmail_path = /usr/sbin/sendmail -t -i
    ```Questo è il mio php.ini.
    Come vedi c'è anche il seting della porta dell'smtp.
    Questa porta è di default la 25 ma con tele2 devi usare la 587 che però **richiede l'autenticazione.** Questo per motivi di antispam. E' settata giusta questa porta?
    Questo però non spiegherebbe il perchè a te arrivi, a meno che non venga considerata locale e quindi fa un altro tragitto. Hai provato ad inviare la posta ad un utente esterno di tele2?
    Per lo stesso motivo puoi usare come server smtp soltanto smtp di tele2 e ovviamente configurare sendmail (se è incluso in easyphp) affinchè abiliti il relay da localhost e dal tuo IP privato.
    
    
    P.S. hai una risposta anche su aspitalia :rollo:

  • User Newbie

    grazie greybar,

    per quanto riguarda la smtp_port avevo già provato a settarla come dici tu (587), ma avevo ottenuto solo la seguente diagnostica:

    Warning: mail(): SMTP server response: 530 [email][email protected][/email] There is an error in your configuration. More info at www.tele2mail.com

    Per quanto riguarda gli utenti tele2 non ci sono problemi; cn loro l'antispam non rompe. E' con il resto del mondo che ho problemi.
    Comunque per stasera ne ho abbastanza, domani è un altro giorno e si vedrà! solo un'ultima cosa: Pisola sembra la gemella della mia Domitilla... salutamela!


  • User Attivo

    Ciao frbl,

    salutami anche tu Domitilla (che nome raffinato 😉 ) da parte di Pisola.
    Ma torniamo al problema...
    Ho trovato diversi thread su internet con problemi simili al tuo ma di solito era legato all'autenticazione. Forse sarebbe il caso di farsi mandare da tele2 il significato dei codici prima di continuare.

    greybear


  • User Newbie

    buongiono greybear,

    nonostante il mio proposito di andare a nanna presto, stanotte sono rimasto fino alle 2,30 a razzolare in rete, arrivando poi alla tua stessa conclusione: ho rimesso la questione a tele2, inviando una mail all'assistenza. Appena mi rispondono (speriamo) ti faccio sapere. Purtroppo la cosa mi incasina un po' tanto se non ne cavo le gambe.

    a presto.