Private Validator
Private Validator allows you to quickly validate the output of a private web server via the public W3C's Validation Service. If the W3C's server can't access your test server, this PHP script can gather its output and upload it to the validator for you. The W3C does not offer HTTPS connections, so keep in mind that this sends the output of your private server across the internet unencrypted. Pete Freitag created a Cold Fusion MX port of this script!
Requirements
- Web server with PHP which can access the server you wish to test.
- Web browser with javascript and access to the private server.
Installation
- Extract the files to a new directory on your test server.
- Open
http://path/to/your/privateValidate.php
- Save the given links as favelets/bookmarklets for quick usage.
How Does It Work?
- You browse to a page on your private server and activate a bookmarklet.
- The bookmarklet submits the internal URL to privateValidate.php (PV for short).
- PV places an HTTP GET request to your server.
- Your server's response is submitted as file-upload data to the W3C validator. (note: this POST data is sent unencrypted)
- Resulting output of the validator is returned to PV.
- PV adds a BASE element to the XHTML (so CSS & links work) and sends it to your browser.
What's Next
- Add CSS validation via the W3C CSS Validation Service. Now that this validator allows file uploads, this should be cake to add.
- Allow POST form handler output to be validated (bookmarklet would change the form's action attribute to point to PV, PV would echo the POSTed data back to the private server in its own POST request.)
Version History
Version | Date | Notes |
---|---|---|
1.1 | 5/14/2004 | + PrivateValidator class + error reporting |
1.0 | 4/15/2003 | Initial "quick & dirty" Release. |
Credits / License
Private Validator was created by Stephen Clay and is freely available under the GNU General Public License (GPL). Private Validator relies on the Advanced HTTP Client class by GuinuX. This is also GPLed and its source is included.