User Tools

Site Tools



This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
Last revision Both sides next revision
doc:appunti:linux:sa:proxy_debug [2011/09/15 15:50]
niccolo created
doc:appunti:linux:sa:proxy_debug [2011/09/15 17:44]
Line 1: Line 1:
-====== Substitute HTML or JavaScript with a proxy ======+====== Substitute HTML or JavaScript on the fly ======
-===== How to test changes to live site without touching it =====+Using this recipe - while browsing a remote server - you can trick your browser into taking one file (JavaScript, HTML, image, ecc.) from a web server controlled by you, instead of from the original server. 
 +This can be useful to test some changes on production server without actually touching the deployed code. 
 +It works by telling the browser to use a proxy for a particular URL, and configure a fake web server to serve that content, eventually canged.
 Create a file **''proxy.pac''** and store it into your web server: Create a file **''proxy.pac''** and store it into your web server:
Line 8: Line 12:
 function FindProxyForURL(url, host) { function FindProxyForURL(url, host) {
     if (shExpMatch(url, "")) {     if (shExpMatch(url, "")) {
-        return "PROXY";+        return "PROXY";
     }     }
 } }
 </code> </code>
-Configure the fake VirtualHost on your web server:+Configure fake ''VirtualHost'' on your web server:
 <file> <file>
 +NameVirtualHost *:8084
 +Listen 8084
 +<VirtualHost *:8084>
 +    ServerName
 +    DocumentRoot /var/www/
 +    ServerAdmin
 +    ErrorLog /var/log/apache2/
 +    CustomLog /var/log/apache2/ combined
 +    # Force .jsp to be served as HTML
 +    AddType text/html .jsp
 +    <Directory /var/www/>
 +        AllowOverride All
 +    </Directory>
 </file> </file>
-The put the fake file into the DocumentRoot fo the VirtaulHost **''/var/www/''**.+Then put the fake file into the DocumentRoot for the VirtaulHost. In the example above it will be **''/var/www/''**
 +Configure the browser to use automatic proxy configuration, and give **''%%''** as the URL.
-Configure the browser to use automatic proxy, and give **''%%''** as the URL.+**NOTE:** This trick does not work with Internet Explorer, because it caches the proxy configuration on a per-server basisIf one page from the server was got via proxy, all the subsequent pages will be too.
doc/appunti/linux/sa/proxy_debug.txt · Last modified: 2011/09/15 17:45 by niccolo