Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

mod_xsendfile for Win x64?

I'm trying to install the mod_xsendfile Apache Module on Windows (7) x64 (using Apache 2.2) -- yes I'm doomed from the get-go, I know :-). Apparently there is :

a) No Win x64 binary for mod_xsendfile, just a Win32 binary from the module's website

b) No Win x64 binary for apxs from ApacheLounge

I've tried the usual LoadModule xsendfile_module modules/mod_xsendfile.so but the semi-obvious error (httpd: Syntax error on line 127 of C:/Apache/conf/httpd.conf: Cannot load C:/Apache/modules/mod_xsendfile.so into server: The specified module could not be found.) occurs, it's not Win x64 compatible.

The question remains -- how does one build the module for x64, is that even possible ? I have VS and any tools that might be required.

I just wanted to see if this would improve my Rails protected attachment download speed - currently getting quite ghastly speeds for simple images.

Thank you in advance !

like image 658
Dr1Ku Avatar asked Jun 20 '10 09:06

Dr1Ku


2 Answers

I'm the author of mod_xsendfile.

I provide win32 binaries only as a courtesy. I still recommend you build yourself from the source. That way you can be sure the binary isn't tampered with, not even by me :p

There are currently no official Win64 Apache2 (or 2.2) builds from the Apache Foundation. Since I test my builds against the official binaries I cannot be sure the binaries will work once the foundation releases official Win64 binaries. Hence no Win64 builds from me

Building from the source is pretty much straight-forward if you aren't novice to (in the Windows case) Visual Studio. The binaries ZIP and/or my github repo contain project files you may import into your Apache solution. I was told even the free Visual Studio Express should be enough to do working builds. The thing is open source. Should there be unanticipated portability problems, I welcome patches ;)

As a last resort you can still run the official Win32 apache + mod_xsendfile on a Win64 box.

like image 193
nmaier Avatar answered Nov 23 '22 18:11

nmaier


I was able to load mod_xsendfile in my system. Here's my setup:

-Windows 7 Ultimate x64 -Apache/2.2.9 (installed via Xampp 1.6.7)

Basically, I just downloaded the module from here: http://www.apachelounge.com/download/mods/mod_xsendfile-0.9-w32.zip

...extracted it to the "modules" directory of apache, added "LoadModule xsendfile_module modules/mod_xsendfile.so" to httpd.conf, then restarted apache.

After this, I checked the loaded modules using phpinfo(), and mod_xsendfile is already available.

like image 27
Milmar Tan Avatar answered Nov 23 '22 18:11

Milmar Tan