User Tools

Site Tools



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

Link to this comparison view

Next revision
Previous revision
doc:appunti:linux:sa:proxy_debug [2011/09/15 15:50]
niccolo created
doc:appunti:linux:sa:proxy_debug [2011/09/15 17:45] (current)
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.1316094630.txt.gz · Last modified: 2011/09/15 15:50 by niccolo