Sequencing Apache Web Server with Perl scripts

    General discussion

  • Application Name: Apache Web Server with Perl scripts

    Application Version: 2.2.15

    Company Name:Apache HTTP Server Project and Perl

    Sequencer Version: 4.6

    App-V Client Version Tested On:4.5 and 4.6

    Operating System Sequenced On: Windows 7 x86

    Pre-requisites:Copy appropriate Apache version from and appropriate Perl version from

    Client Operating Systems Successfully Deployed To:Windows XPsp3 x86 and Windows 7 x86 (which doesn’t mean it cannot be successfully deployed to a x64 operating system – I just haven’t tried it!)

    Posted by Microsoft Employee:Gautam Anand

    Steps to Sequence the Application:

    1.     Fire up the sequencer and after initial sequencer steps click Begin Monitoring.

    2.     Start the PERL installation first (by double clicking the Perl installation MSI) – Choose the installation folder as the Q:\ drive in the appropriate directory (e.g. q:\webpkg\perl).

    3.     Run through the rest of the Perl installation wizard as required.

    4.     Do not stop sequencing when the Perl installation finishes. Now you need to move to the Apache installation

    5.     Fire off the Apache MSI and choose the installation directory toq:\webpkg\apache

    6.     Run through the rest of the Apache installation wizard as required.

    7.     Once the Apache installation finishes you need to configure the Apache web sever settings file (don’t stop sequencing yet).

    8.     Navigate toq:\webpkg\apache\conf directory and open the httpd.conf file in Notepad.exe (or a txt editor of your choice).

    9.     When editing keep in mind Apache (like many Unix apps)is case sensitive.

    10. Depending on how you are setting up Apache you might need to change more parameters than the ones mentioned below but the below is a start to get your web server working nicely with Perl scripts thrown in.

    11.  In thehttpd.conf file you need to modify the below parameters from their current values (see Step 12 for examples). Their current values will be pointing toq:\webpkg\apache\something which will be the virtualized file system.

    <Directory>                      à this entry is a few lines after the DocumentRoot parameter and is preceded by this line # This should be changed to whatever you set DocumentRoot to.

    ScriptAlias /cgi-bin/

    <Directory>                      à this entry is a few lines after the ScriptAlias parameter and is preceded by this line should be changed to whatever your ScriptAliased.


    12.  You need to change the values of the above parameters to point to a location which is outside of the bubble e.g. c:\webroot. Below are the values I used….
    DocumentRoot "c:/webroot"

    <Directory "c:/webroot">
    ScriptAlias /cgi-bin/ "c:/webroot/cgi-bin/"
    <Directory "c:/webroot/cgi-bin/">

    13. Save the file to its original location (UAC might not allow you to save here and you might need to save it to a different location first and then overwrite the original file inside q:\webpkg\apache\conf)

    14. Stop the Monitoring and proceed through the all the remaining steps of Sequencing. You want this entire package to load at the same time so you do not need to do the Launch when sequencing.

    15. The next configuration steps for Apache and Perl need to be done on the workstation where you plan to deploy this package – so go ahead and save the sequenced package.

    16. On the workstation where you plan to deploy the package you will need to do 4 things specific to apache and Perl. These could be done via any other script depending on how you are deploying the package!
    - Create the c:\webroot\htdocs and c:\webroot\cgi-bin folder structure
    - Create a index.html inside c:\webroot\htdocs
    - Copy your *
    .cgi files inside to c:\webroot\cgi-bin
    - Modify the
    *.cgi files to point to the correct location of Perl.exe which as per our example is q:\webpkg\perl\bin\perl.exe

    17. You are done! (Note: this is basic Apache configuration – you might need to do more depending on your requirement – the trick is to keep the web content outside of the bubble otherwise you’ll keep getting served stale content from inside the bubble).


    Known Issues/Limitations:None that I know of – if you find any feel free to add them here.                                  

    Approximate Sequencing Time: 20 minutes

    Descriptive Tags: apache web server perl scripts sequencing virtualized app-v httpd.conf

    Friday, April 16, 2010 6:33 AM