Link to home
Start Free TrialLog in
Avatar of itcdr
itcdrFlag for United States of America

asked on

PHP Mail - get past spam filters with domainkeys

I'm sending a verification email with PHP each time a new user creates an account. problem is only about 80% of the users are getting the email. I'm guessing for the others it's getting caught in their bulk/spam folders. (many of the users saying they didn't receive it are using @yahoo.com or @sbcglobal.net)

<?
#send verification email
$ret=mail($email,"Welcome to the site", $msg, "From:support@my_domain.com");
?>

I recently found this: http://antispam.yahoo.com/domainkeys

Will setting up domainkeys solve my problem? will it only help for yahoo users? is there something else I should be doing to ensure the email doesn't get blocked by a spam filter?
Avatar of grblades
grblades
Flag of United Kingdom of Great Britain and Northern Ireland image

There could be a number of reasons. Adding domainkeys (now incorporated into DKIM) and SPF records in your DNS may well help. SPF will be far easier to setup.

Is it a public system that I could create an account on so I can check exactly what email I receive against all our rules?
Avatar of itcdr

ASKER

1) I'm using

Fedora Core 6
PHP 5.1.6
Sendmail 8.13.8
DNS is controlled by my registrar

can I use domainkeys with that setup? If so, can you point me to a good guide?

2) the site is http://sharetv.org - TV Community
ASKER CERTIFIED SOLUTION
Avatar of grblades
grblades
Flag of United Kingdom of Great Britain and Northern Ireland image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of itcdr

ASKER

thanks. I'll follow the directions for setting up DKIM and talk to my hosting company about the reverse lookup.

but for the SPF configuration, will I have to setup a DNS server (BIND) as my registrar currently handles the DNS
No for SPF all you need to do is add a TXT record to the DNS. Most registrars have a website where you can do this.
Avatar of itcdr

ASKER

here's what I got so far:

1) I added an SPF record using my registrar's control panel:
hostname: @
TXT: v=spf1 a ~all

so now mail services can deny email if it comes from my domain and not my IP address.

2) now to setup DKIM. I compiled it and added the configuration to sendmail, but now it says to create a dns record with the public key. then dns lookups will go to selector._domainkeys.mydomain.com. can I do this with my registrar as well?


this seems like a big pain just to confirm I sent an email
Yes you can normally do it with your registrar as it is just another TXT entry to the dns however you need to apply it to the _domainkeys subdomain. Some registrars may make a small extra charge to add a subdomain.

The DNS entry will look something like :-
aug07._domainkeys.mydomain.com IN TXT "k=rsa; p=fdffffdfesafgrwgrgr...grgrgteht;"
Avatar of itcdr

ASKER

thanks. you've been a great help!
Any clue of how to user php to sign messages and put them in the queue, avoiding mail() function??