Portal Home > Knowledgebase > Articles Database > Anyone know how to create on the fly e-mail addresses like craiglist do?


Anyone know how to create on the fly e-mail addresses like craiglist do?




Posted by Max Renn, 06-11-2007, 07:43 AM
Hello, If you look at some craigslist posts like this - http://sfbay.craigslist.org/sfc/mis/349476796.html - you will see they use a some-random-number@craigslist.org Basically when someone posts something, they input their e-mail address, a anonymous craigslist e-mail address is created which is linked to the real e-mail address. Anyone know how to do this? Thank you

Posted by eukvps, 06-11-2007, 08:01 AM
Hello, Actually its controllled via a script , may be developed in PHP or any other Scripting Language , so a random Alphanumeric number is generated which is then linked to main email address

Posted by Max Renn, 06-11-2007, 08:03 AM
OK. But if I e-mail some-random-number@craigslist.org, the e-mail will reach the person. So an actual temporary e-mail address is created. So I guess my question is - how do I create temporary e-mail addresses like craigslist do?

Posted by eukvps, 06-11-2007, 08:12 AM
Well you need to create a Custom PHP script that we create some random alpha numeric numbers.

Posted by Ks Jeppe, 06-11-2007, 08:30 AM
eukvps, he doesnt just want the random email address made, he wants it so that when he emails it, the email server will forward the email to the correct original email, if i'm not mistaking? I don't have much experience in this sadly, so i cant really help you

Posted by Xenatino, 06-11-2007, 08:36 AM
1.) Setup a catch-all for said domain 2.) Pipe that box to PHP script 3.) Identify mail using the pers- prefix 4.) Forward/Record mail 5.) Bounce other mail not matching pattern.

Posted by Xeentech, 06-11-2007, 09:03 AM
Its a whole lot easier than that if you have access to your mail servers config. I have a MySQL db with a table called "aliases", in that table there are fields "forwardto" and "address". You can guess what they do.. I setup an XML-RPC API so my users can add aliases for thier domains in real time.

Posted by mwatkins, 06-11-2007, 10:56 AM
Agreed -- an aliases table is the clean way to do this. In Postfix with postgres or mysql (or other databases) provided you've built Postfix with db support, adding an additional alias map is dirt simple. You don't want to be piping and parsing email... that's just too much work and not needed.

Posted by Max Renn, 06-12-2007, 12:01 PM
Thank you all for your advice. I shall look into using postfix for this. Thanks.

Posted by WebsBests, 06-12-2007, 02:04 PM
I always thought that they had a database of the real emails from the posters and that those blah@craigslist.com were cloaked e-mails. They would just select the right one and do a mail() function.

Posted by mwatkins, 06-13-2007, 11:24 AM
Who knows, they might, but that would be a stupid thing to do. Why? Because then they'd be writing a mail transfer agent, with all the issues that surround that (bounces, RBLs, spam, etc), rather than "craigslist", and MTA's like Postfix already excel at that. Cooking up the integration of a database-backed alias table takes all of a couple minutes for Postfix, no doubt the other MTA's are similar work effort, and then you have a completely robust and highly scalable solution. Using PHP mail() is neither robust nor scalable.

Posted by WebsBests, 06-13-2007, 11:32 AM
It was the first thing that came to my mind, thank you for clearing it up. I'm not too familiar with Postfix.

Posted by mwatkins, 06-13-2007, 11:54 AM
I regret using the word "stupid" in my note because I didn't mean you when I wrote that. What I was thinking at the time of dashing it off was that programmers and system architects are frequently guilty of reinventing the wheel. Goodness knows I've been through that "stupid" phase! After awhile one starts to realize that most wheels have already been invented and always ask the question "what does what I want to do most look like... and is there something that already delivers that".

Posted by WebsBests, 06-13-2007, 11:58 AM
I know it wasn't intended at me, my opinion was just the first reasonable explanation that came to my mind, although it was not the smartest one haha :-). But I see what your saying.

Posted by MysticServer, 06-13-2007, 12:28 PM
it's actually not that hard to do. I have a script I wrote for exim on a cpanel server that does it.. Took me all of an hour. PM me if you want me to dig up the code. -Jason

Posted by mwatkins, 06-13-2007, 12:39 PM
I can beat an hour - here's an example forwarding "script" - just a configuration file for Postfix: In an "accounts" and other tables I have numerous columns relating to the various accounts; I use views to limit the access to data (security) and grant access to the views, not the raw tables, to the postfix user. v_forward contains only the information required: Dirt simple.



Was this answer helpful?

Add to Favourites Add to Favourites    Print this Article Print this Article

Also Read
Rate Donhost (Views: 480)