Я занимаюсь разработкой веб-сайта с использованием локального сервера, но у меня есть удаленные зависимости. Я хотел бы подделать запросы на файлы с удаленных серверов. Например, когда браузер делает запрос на fooCDN.com/bloatedLib.js
содержимое /Users/name/Desktop/bloatedLib.js
будет возвращено.
Я использую Mac, и решение, которое работает на уровне системы или браузера, подойдет. Если он работает на уровне браузера, то подойдет только решение Firefox или Chrome. Я не могу использовать компьютер с Windows.
google-chrome
mac
firefox
browser
Даниэль Ф
источник
источник
Ответы:
Я взломал этот маленький прокси-сервер, чтобы загрузить только недостающие файлы. Просто настройте файл / etc / hosts так, чтобы он указывал сайты, которые вы хотите кэшировать, на 127.0.0.1, а те, которые вы хотите заблокировать на 0.0.0.0.
Обратите внимание, что он помещает все файлы в один каталог, поэтому может вызвать конфликт версий. (Я сделал это намеренно, чтобы у меня не было 500 копий jquery)
источник
illegal option -- e
вы можете помочь с этим?-c
параметр для запуска скрипта (так же, как и-e
безsh -c
детали)Похоже, вы используете локальный веб-сервер. Отлично.
В файловой системе вашего Mac есть файл с именем
/etc/hosts
. Вы можете перенаправить все запросы наfooCDN.com
свой локальный компьютер, добавив эту строку в/etc/hosts
:Для редактирования вам понадобятся права суперпользователя
/etc/hosts
.Вышеуказанная строка означает, что
fooCDN.com
будет загружаться с вашего собственного компьютера, где веб-сервер прослушивает.Вы не указали, какой веб-сервер вы используете локально. После документации веб - сервера, вы должны создать виртуальный хост , который указывает на корневой каталог документов
fooCDN.com
для/Users/name/Desktop/
.Это пример конфигурации (я сам ее не тестировал), которую вы можете попробовать использовать с Apache :
Вот пример конфигурации для Nginx (также не протестирован):
Не забудьте перезапустить службу веб-сервера или перезагрузить новый файл конфигурации.
источник
fooCDN.com
файл, когда у него нет подключения к Интернету.Вы могли бы использовать программное обеспечение прокси-сервера, которое поддерживает перезапись URL для выполнения задачи. Многие приложения прокси-сервера поддерживают перезапись URL. Например, прокси-приложение Charles Web Debugging Proxy для Windows, Mac OS и Linux поддерживает перезапись URL-адресов . Вы можете установить его в своей системе Mac, а затем настроить браузеры в системе для использования прокси-сервера.
Кроме того, Apache , который является бесплатным и открытым исходным кодом, имеет модули mod_proxy и mod_rewrite .
Mitmproxy бесплатен и также будет работать в системе Mac OS X.
Если вам нужно извлечь элементы из кэша вашего браузера, чтобы сделать их доступными через прокси-сервер, вы можете использовать методы, представленные в разделе Просмотр кэша Chrome (простой способ) . Например, в Google Chrome вы можете поместить
chrome:\\cache
в адресную строку браузера, а затем найти соответствующие элементы в кэше Chrome и скопировать их в другое место.источник
Похоже, старый добрый wwwoffle должен соответствовать вашим потребностям. Это прокси-сервер, на котором вы можете выбирать ресурсы для автономного использования.
источник