I'm programming my own boards. I have realized in the past that an obvious problem with many board softwares is Image HTTP athentication. What that basically is:
Someone posts an image using the [img] tags on a forum. Once the image is posted, or even before, they make the directory that stores the image as "passworded". Some people can even make this so that it asks you for your forum login, appearing to be a part of the forum.
My first and more basic solution is that [img] tags and avatar linking is disabled for the new members group by default. You have to have 50 posts to use those options. It's simple, but effective, as deleting members who abuse this is simple and it is tough for them to redo this.
My second theory, is to parse the [img] tags so it is stored in the database, and every 3 minutes lets say (for page loads), it will "check" the image using the getimagesize function and trying to grab parameters of the image using that. If nothing is returned, it should disable the image. My conserns with this are:
1. If the getimagesize function fails, or the server fails, then it will disable it, thinking that the image is messed up or password protected. A possible solution is to have images be rechecked every few minutes or so whenever a page is loaded to see if its back to normal.
2. Another problem is bandwidth. From what I know, calling functions on remote images causes the server to use up bandwidth since it has to download the image.
My third theory, is to get the server to first check the image to see if its valid, then download it to the server and show it there. Although that may not be good for people wishing to conserve space, I could add a feature which removes these images when they haven't been viewed for 30 days.
Right now, Option #1 will be included indefinately. And options #2 and #3 may be included as extra options, of course the bandwidth or space issues will be displayed as drawbacks to using these options.
Any suggestions or comments on these techniques please, or better yet, another way then what I'm talking about here (an image checking technique that does not take up bandwidth preferably, but all suggestions welcome).
Thanks