Local Validator - I give up - summary

A summary of my experiences installing a local copy of Validator on XP Pro
with IIS

I have to conclude that at this time, 25 Sept 2007, it is not possible to
install a local copy of Validator 0.8 on an XP Pro system. The nature of the
problems is such that
I can only conclude that this would be true for both IIS and Apache servers
(see below).

1.	I have an existing XP Pro system with IIS, PHP and MySQL working.
PHP and MySQL are installed on d:.  IIS is set up to serve files from
d:\wwwroot.
2.	I followed instruction on
http://validator.w3.org/docs/install_win.html and downloaded
http://validator.w3.org/validator.tar.gz (the validator itself) and
http://validator.w3.org/sgml-lib.tar.gz (the DTDs). I also downloaded
ActivePerl (version 5.8) and the Perl modules ready-to-install in a single
zip-file.
3.	I installed the Validator in d:\wwwroot\validator.
4.	I was aware that the validator .html files used SSI and that there
would be an issue with this as IIS does not support the same set of SSI
commands as Apache. I converted all of the .html files to use PHP instead. 
5.	IIS does not support virtual hosts so it was necessary to check all
of the .html files to ensure that the paths referred to the correct path on
my server. This was done entirely using PHP and relative paths, so the
validator could be located anywhere on the server. 
6.	IIS does not support ScriptAlias so I changed all references to
‘check’ in the submit action events to refer to ‘check.pl’ instead and
changed the name of the ‘check’ file to ‘check.pl’
7.	At this point the Validator front end was serving up functional
pages and trying to launch ‘check.pl’ – but as Perl was not yet installed it
naturally failed.
8.	I installed Perl using the .msi distro into d:\perl. I installed the
modules into d:\perl\pmm. I followed instruction in
http://support.microsoft.com/kb/245225 to ensure IIS was serving .pl
correctly. In addition to the settings described in this guide I had to use
the Internet Information Services manager t set ‘Script Source Access’ in
the ‘Home Directory’ tab on the web site properties page. After this the
‘test.pl’ page was served correctly.
9.	I edited ‘check.pl’ as indicated in
http://validator.w3.org/docs/install_win.html to have the appropriate path
settings for my windows instalment. The instructions also say change the
line “file_cache_dir => File::Spec->catdir(File::Spec->tmpdir(),
'validator'),” to “file_cache_dir => 'C:/temp/validator',”. I was unable to
locate this line and advised that this was no longer necessary in the new
version of the Validator. 
10.	I then installed all of the Perl Modules listed in
http://validator.w3.org/docs/install_win.html using the ‘pmm.bat’ file to
launch the pmm GUI. The PMM manager GUI indicated XSLoader was not installed
but would not install it! In order to get XSLoader installed I had to use
the PMM command line.
11.	I then tried to validate a page on my local server using the local
installation. I launched the validator and entered ‘http://server/test.html’
as the page to validate. (I had already tested that IIS would serve this
page to my browser).
12.	 I received an error indicating the "Encode, Encode::HanExtra”
module was missing. I found that this was included with the Perl .msi
install and all I had to do was ‘load’ it using PMM.. I then got an error
indicating that "Encode, Encode::JIS2K” was missing. I was unable to locate
a copy of this so commented out the relevant ‘use’ line in ‘check.pl’ as
support for japaneese was not important to me. I could also have commented
out the HanExtra line as I don’t need Chineese support.
13.	At this point running Validator to validate a file produced the
error
Can't load 'D:/perl/site/lib/auto/SGML/Parser/OpenSP/OpenSP.dll' for module
SGML::Parser::OpenSP: load_file:The specified module could not be found at
D:/perl/site/lib/XSLoader.pm line 64.
 at D:/perl/site/lib/SGML/Parser/OpenSP.pm line 18
Compilation failed in require at d:\wwwroot\validator\httpd\cgi-bin\check.pl
line 61.
BEGIN failed--compilation aborted at
d:\wwwroot\validator\httpd\cgi-bin\check.pl line 61.
14.	I have been unable to track down the source of this error as all
referenced files in the error exist in the paths as given and no-one on the
validator email group has offered any suggestions that help to diagnose the
problem. I do not have sufficient experience with Perl to investigate
further. This error is NOT related to the way IIS serves the files and thus
I can only conclude that the same problem would exist if Apache was used
instead. 

The problem may be the result of incorrect path settings or folder
permissions. It is also interesting that XSloader installation was
problematic, and is indicated the error that cannot be traced.

It is also interesting that advice was given that TEMP files are not used,
yet are referred to in the OpenSP.pm has, at line 63. This could be a folder
that does not exist, does not have a ‘valid’ Windows format patrh or has
incorrect priviledges.


Allan Smith
Webmanager
 
Support Telford Steam Railway for free when shopping online with over 400
brand-name retailers including:-
 Amazon, NEXT, M&S, John Lewis, Debenhams, HMV, The Body Shop, Vodafone,
DELL, Woolworths, PLAY.com, Interflora and Comet amongst many others...
TSR Easyfundraisning

Received on Monday, 24 September 2007 09:40:50 UTC