Muitos servidores proxy HTTP (como o Squid ou o Privoxy) são capazes de redirecionar solicitações.
Lula:
Privoxy:
{ +redirect{http://localhost/example.com.css} } example.com/stylesheet\.css$
Estou tentando conseguir algo que você normalmente usa um arquivo de hosts, mas isso não é adequado aqui.
Eu quero um PC com Windows para se referir a um arquivo local (eu posso servi-lo de um servidor web no localhost, se necessário), quando ele tenta buscar um determinado arquivo remoto via HTTP. No entanto, preciso que outros arquivos desse servidor da Web remoto específico sejam buscados como de costume.
Qualquer ajuda apreciada.
Editar:
O caso específico é que estou personalizando um aplicativo da web que não possuo e não posso executar localmente. É um aplicativo da web hospedado e o css personalizado é adicionado por meio de um campo de texto padrão em HTML, que é aplicado imediatamente ao site de produção. Isso obviamente limita minhas opções de teste.
Então, tenho testado aplicando um arquivo css especificado pelo usuário na minha máquina local. Isso funciona muito bem em navegadores que permitem isso.
Eu quero testar navegadores antigos que não permitem css especificado pelo usuário, então eu quero interceptar todas as solicitações de saída para o arquivo css remoto e redirecioná-los para um arquivo css local (que eu posso referir usando file: / /, http: //, o que for - eu farei o que tenho que fazer. Se o método recomendado requer que o arquivo local seja servido usando http, não me importo de disparar uma instância rápida do SimpleHTTPServer do Python em uma porta local) .
Não consigo redirecionar o nome do host inteiro, porque o site de terceiros não será carregado. Eu só quero interceptar solicitações para uma URL específica e, em vez disso, apontar para o meu arquivo local.
Também devo observar que o aplicativo da web remoto não permite o uso de instruções de importação de CSS, porque essa é a solução óbvia para esse problema.
Muitos servidores proxy HTTP (como o Squid ou o Privoxy) são capazes de redirecionar solicitações.
Lula:
Privoxy:
{ +redirect{http://localhost/example.com.css} } example.com/stylesheet\.css$
Se por "servidor web" você quer dizer "httpd", então mod_proxy
's ProxyPass
é o que você está procurando.