![]() |
Remote server image/attachment database hack
This is my first vBulletin hack. I have tested it only in my own vBulletin implementation. Let me know if it worked for you.
What this hack does: I created this hack because I plan to use my vBulletin website mainly for storing and searching thousands of images that can be uploaded by many different people. Since images take up a lot of space and bandwidth I thought of a solution whereby vBulletin saves attachments on a remote database and provides links to these attachments or if images are going to be shown in messages that the remote server generates them directly to the end browser. Another requirement is that the attachments not be available outside vBulletin itself in order to conserve the privacy of them. So what I did is create temporary permissions only provided from within vBulletin itself before requesting the files to be downloaded. These permissions are then immediately deleted by the remote server once the files are delivered. If the files are not delivered within a specified time, the permissions are automatically eliminated. The benefit of this hack is that you will be able to provide virtually unlimited space for your attachments for almost zero cost. What you need in order to implement this hack: You will need a separate server from the one where you are hosting vBulletin with http, php, and mysql services. I tested the hack on MS IIS on a server connected with regular DSL. You will need a fixed ip address or a domain name of your webserver where the images are stored. If you don't have one you can get dynamic DNS service (I use tzo.com for about $24 a year - works great). Your vBulletin server must be able to communicate to your remote server mysql database. This is crucial. Your remote server must be able to communicate with the vBulletin mysql database server, if not it will not be able to update the view/download count (not terribly important). If you ISP blocks ports you might be able to get around them by using alternate ports for everything. I think the hack should be able to support alternate ports. Steps to implement the hack: 1. First, of course, do a back up of everything :) 2. Apply the hacks to your current vBulletin implementation using vbHacker.php. Hacks include about 18 code alterations and 3 template alterations and no database alterations. 3. Edit the changed config.php supplying the necessary information about the remote web server and database server. 4. Upload the edited config.php to the /admin directory of the remote server. 5. Upload riattachment.php below the /admin directory of the remote server. riattachment.php is the program that delivers the attachment to the end browser, it is a heavily modified version of the original attachment.php. attachment.php is no longer used after applying the hack (I think). 6. Create the database and tables of the remote server using the createattachdb.php utility. 7. If you already have attachments stored in your vBulletin database you will need to transfer them to the remote database using the provided transferattach.php utility. future possible enhancements to this hack: 1. Check the availability of the remote server and if not there gracefully disallow uploading of new attachments and disable viewing/downloading of attachments. I think this is important since usually the remote servers will be connected via consumer internet and will be home computers so connectivity is not going to be very stable to say the least. 2. Have the option of showing thumbnails stored at the main server and then if requested transfer the large size images stored at the remote server. 3. Store the remote database connection info in the setting table so that it can be changed from within the control panel. 4. Make a fully comprehensive install program, possibly adding the required information of the remote server to config.php directly instead of hacking it. 5. Possibly eliminate the need of fixed ip/domain name by having the remote server automatically update its ip address at the vBulletin database server each time it connects to the internet. |
Wonderful :)
|
Quote:
But may I ask why you use tzo.com? I mean, there are a lot of free ones out there that give you the same thing, if not more. Im personaly very happy with DNS2Go (http://www.d2g.com/) |
Hey, if DNS2Go works for you, great. I just mentioned a possible solution.
|
....so confused...
what vbb version is yours when my vbb 2.25 install the hack ... can't find those : In the admin/functions.php file, replace this code: PHP Code:
PHP Code:
|
I am using 2.2.6. Let me know if it is too much hassle for you to upgrade to 2.2.6, it shouldn't be terribly difficult for me to build a hack file for 2.2.5 if its only those two hacks that have to be changed.
|
hey :)
great hack my best wish... LORD |
Quote:
but the vbb is very bad for language support,especially for Chinese. when change the new verson again will need to write the chinese style again ... So...i need your help let me use it for 2.25 ....thanks.. |
Ok, here is the hack modified for 2.2.5 but I have not tested it in any way. Please let me know if it worked.
|
Argh!!
A friend of mine who admins the boards has just written this same hack! We've had the same thing in beta for the past 3 months, at least :( We have a secondary server donated by orange.net which we save attachments in. At the moment we have database connections, and attachments are brought through using the same attachment.php file - I did intend on having a remote attachment.php but thats step 2... Just got it up and running tonight, as we've had mySQL problems! I can't believe it! hehe... |
Also, which vB files need coping over onto the remote server as well?
|
Hello Martz,
I think my hack is better because it delivers the attachments directly from the remote server bypassing the server where vBulletin resides. This way you also save on bandwidth from the main server. The only vB files that need to be copied to the remote server are config.php (after adding the necessary database connection information), vb_mysql.php and riattachment.php |
I agree that the remote attachment.php is a good addition - bandwidth isn't our problem yet - database size was. I'd like to use your riattachment.php, might try it out today :)
|
do you have the non vbhacker version?
|
OMG i requested this one. This is amazing. I have always been looking for somehting liek this. I am going to install this tonight and come back and tell you how good it works. Just to get this straight to what this hack does to see if i am correct. I already have 2 servers on 2 different hosts. So images and attachments go to one servers host and the other holds the actual php files and stuff. Please tell me if this is what this hack does hehe. Thanks so much.
|
BigJohnson, you will need to install three PHP files (vb_mysql.php, riattachment.php and config.php) in the server where the images/attachments are going to be delivered from.
Fazle, what is the non vbhacker version? You mean you just one a set of instructions on how to edit the PHP files? |
This sounds like the perfect hack for me, as I have just moved my vBulletin (that uses roughly 30 GB/month) from my primary server to my secondary one (see signature). My primary server allows 400 GB of transfer per month for a set fee (and I'm not even using 300 GB right now), while my secondary only allows 40 GB per month.
Anyway...my question is: How much bandwidth could/would I save through this? What has it done for your boards? Does attachments really account for a lot of bandwidth usage? Thanks. :) |
setting up my config file im having some problems..
PHP Code:
and on my other server I have it setup like /formkaos/admin/config.php /formkaos/riattachment.php what else do I need in these folders? sorry but I really need this :D thanks, -myles |
What errors are you getting exactly?
|
where is the install file
and does this work on 2.2.9 or .8 waiting this the hack i been looking for for ages let me know thank you |
Great stuff, just installed it. :)
|
Is this hack work in VB3 RC4 ?
Thanks |
Anybody answer me ?
|
Has anyone released this for vb3?
|
Quote:
|
Is there same hack but for Vb3?
|
is there one for vb3.0 same hack?
|
Guess there is not.
|
All times are GMT. The time now is 04:48 PM. |
Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
![]() |
|
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|