View Single Post
  #2146  
Old 06-25-2006, 03:04 PM
AndrewD AndrewD is offline
 
Join Date: Jul 2002
Location: Scotland
Posts: 3,486
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Nokia Tech
Can you please explain to me whet exactly you mean when you say



I am a little confused here, I assume you are refering to bandwidth usage from my hosting supplier ?

Please bear with me, as i am still fairly new to all this Vb mods etc

Thanks
LDM can handle documents in various ways. Sometimes, people use it because they want to keep file locations secret. This is how LDM is configured by default.

To achieve this secrecy, the user is sent a url that does not point directly to the download, but instead points to the LDM script. The script works out what it is being asked to send, reads the file and sends it on to the user, with appropriate headers and so on, so that the file behaves correctly when it reaches the user's browser (e.g. has the right name, etc).

This is very straightforward (quite cheap in cpu and identical bandwidth to providing the actual file url) when the file is actually stored on the web server that is running LDM.

However, if you have the file stored on another server and want to keep its location secret, then LDM has to read the file from the second server and then re-transmit it to the user. This is twice as costly in bandwidth (file has to pass twice through your server) and about 10-50 times as expensive in server cpu, because reading remote files is a complex process. The practical consequence is that standard php configurations (which usually allow about 30 seconds cpu) will fail to transmit remote files that are bigger than a megabyte or so.

This problem only occurs with entries that LDM 'recognises' as a 'download' - i.e. has a file type which appears in the VBulletin 'attachments' mimetype table - and only if the LDM setting 'force_redirect' is set to 0. For all other file types and when force_redirect is set to 1 or 2, LDM gets the user's browser to do the work, by telling it to redirect to the file. For files stored on a remote server, this means that there is no bandwidth load on your server and no cpu load either.

Basically, the 'hidden file' mechanism is cheap and secure provided the file is held on your own server, but a pain in the beck when it's on another server ...
LDM can
Reply With Quote
 
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01202 seconds
  • Memory Usage 1,768KB
  • Queries Executed 11 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD_SHOWPOST
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)bbcode_quote
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_box
  • (1)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit_info
  • (1)postbit
  • (1)postbit_onlinestatus
  • (1)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • reputationlevel
  • showthread
Included Files:
  • ./showpost.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_postinfo_query
  • fetch_postinfo
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showpost_start
  • bbcode_fetch_tags
  • bbcode_create
  • postbit_factory
  • showpost_post
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • showpost_complete