This install will be done entirely without using installers so it should be possible to move the top-level directory between machines without issues. Since there are a number of steps to get this installed, this should mean you never need to do it again if you keep a backup. I'll be installing everything into c:\hellavcr but this path is entirely up to you.
- Download and extract hellaVCR to c:\hellavcr\hellavcr http://code.google.com/p/hellavcr/downloads/list
- Rename sample.tv.xml and sample.hellavcr.config.php to not have sample. prefixed
- Configure hellavcr.config.php
- Download and extract PHP to c:\hellavcr\php http://windows.php.net/download/
- Try and run php-cgi.exe. If you get any errors then install Microsoft Visual C++ 2008 Redistributable (from microsoft.com or msdn.com, nowhere else)
- If further errors are seen use Dependency Walker to determine which DLL is missing and install it (all beyond the scope of this blog post) http://www.dependencywalker.com/
- Download Mongoose (a lightweight Windows web server with CGI support) to c:\hellavcr\mongoose.exe http://code.google.com/p/mongoose/downloads/list
- Enable PHP CGI support by creating mongoose.conf (at the date of writing the sample mongoose.conf from the mongoose page is inconsistent with the mongoose configuration directives specified in the manual):
document_root c:\hellavcr\hellavcrlistening_ports 80error_log_file c:\hellavcr\mongoose_error_log.txtaccess_log_file c:\hellavcr\mongoose_access_log.txtcgi_interpreter c:\hellavcr\php\php-cgi.exeindex_files index.php,index.html,index.htm
- Configure PHP, cURL and OpenSSL
- Copy c:\hellavcr\php\php.ini-production to c:\hellavcr\php\php.ini
- Edit php.ini and replace ";extension=php_curl.dll" with "extension=./ext/php_curl.dll"
- Also replace ";extension=php_openssl.dll" with "extension=./ext/php_openssl.dll"
- Start Mongoose
- It creates a system tray icon which allows you to install a Windows service
- Visit http://127.0.0.1/ and check everything works correctly
- Hopefully it does, if not see the mongoose_access_log.txt and mongoose_error_log.txt logs
- Try running php-cgi.exe -v to see if any errors are listed