|
2 / 2 / 0
Регистрация: 14.09.2018
Сообщений: 56
|
||||||
Настроить RewriteRule для замены хоста в *чужих* URL14.09.2018, 16:44. Показов 1623. Ответов 3
Метки rewriterule (Все метки)
Есть Домашнийкомпьютер с Windows 7 SP 1Rus 64 bit.
На нём локально на 127.0.0.1:80 установлен Apache. Своего сайта на компьютере НЕТ. Требуется сделать из Apache прокси, который делает так: 1) Все URL'ы из браузера, кроме нескольких чужих хостов, открываются так, будто бы никакого Apache нет. 2) Для заданных хостов выполняется замена одного чужого хоста на другой, путь к файлу остаётся прежний. Хосты заданы в виде IP, поэтому DNS или hosts отпадают. 3) Прокси нужен только для браузера. Сделал 1) Поставил браузеру в качестве прокси 127.0.0.1:80 2) В httpd.conf написал
Вопросы: 1. Что я делаю не так? 2. Есть ли какая переменная для протокола, чтобы задать в одном правиле и http, и https ? P.S. SQUID не предлагать, для него URL rewrite - отдельный модуль, которого под Windows, похоже, что нет.
0
|
||||||
| 14.09.2018, 16:44 | |
|
Ответы с готовыми решениями:
3
RewriteCond влияет толко для один, следушчи RewriteRule. можно как-то превишать количество RewriteRule RewriteRule меняет url |
|
2 / 2 / 0
Регистрация: 14.09.2018
Сообщений: 56
|
||||||||||||||||
| 15.09.2018, 18:33 [ТС] | ||||||||||||||||
|
Никто не хочет отвечать, поэтому отвечу себе сам для тех, кто зайдёт сюда через поиск с аналогичной проблемой.
Теперь всё работает. Для этого в httpd.conf нужно было: 1) задать имена модуля для перезаписи URL не mod_rewrite, а rewrite_module 2) загрузить его - раскомментировать строчку LoadModule rewrite_module modules/mod_rewrite.so. В результате имеем бесконечную рекурсию редиректов. Чтобы избавиться от них, нужно спихнуть URL во встроенный прокси, для чего надо 3) исправить правило на RewriteRule (.*) http://%{HTTP_HOST}%{REQUEST_URI} [QSA,END,P]. В результате имеем ошибку "500 Internal Server Error", поэтому надо 4) раскомментировать строчки LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_http_module modules/mod_proxy_http.so В результате исправлено в httpd.conf
Перезапускаем apache - и наслаждаемся ![]() Добавлено через 4 часа 49 минут Никто не хочет отвечать, поэтому отвечу себе сам для тех, кто зайдёт сюда через поиск с аналогичной проблемой. Теперь всё работает. Для этого в httpd.conf нужно было: 1) задать имена модуля для перезаписи URL не mod_rewrite, а rewrite_module 2) загрузить его - раскомментировать строчку LoadModule rewrite_module modules/mod_rewrite.so. В результате имеем бесконечную рекурсию редиректов. Чтобы избавиться от них, нужно спихнуть URL во встроенный прокси, для чего надо 3) исправить правило на RewriteRule (.*) http://%{HTTP_HOST}%{REQUEST_URI} [QSA,END,P]. В результате имеем ошибку "500 Internal Server Error", поэтому надо 4) раскомментировать строчки LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_http_module modules/mod_proxy_http.so 5) чтобы при адресе 127.0.0.1 или localhost не зацикливалось, а показывалась страница Апача, в начало секции rewrite_module добавляем правило RewriteCond %{HTTP_HOST} 127\.0\.0\.1 [OR] RewriteCond %{HTTP_HOST} localhost [NC] RewriteRule (.*) %{REQUEST_URI} [QSA,L] В результате исправлено в httpd.conf
Перезапускаем apache - и наслаждаемся ![]() Примечания: (3 шт.) 1. НЕ обязательно заменять каждый входной IP на уникальный выходной. Можно несколько входных или даже все заменить на один выходной. Например, так:
2. НЕ обязательно заменять IP на другой IP, можно и на имя домена. Или организовать замену домен X -> домен Y, хотя лучше делать это через hosts. Менять домены через Апач, на мой взгляд, нужно если их много и выходное имя можно как-то вычислить из входного. 3. Можно менять не только домены, а вообще весь URL, как вам угодно - всё в ваших руках.
0
|
||||||||||||||||
|
0 / 0 / 0
Регистрация: 15.09.2018
Сообщений: 2
|
|
| 15.09.2018, 18:35 | |
|
Здравствуйте.
Подскажите, вы программист?
0
|
|
|
2 / 2 / 0
Регистрация: 14.09.2018
Сообщений: 56
|
|||||||||||
| 07.10.2018, 11:40 [ТС] | |||||||||||
|
Маленькое уточнение - чтобы заходило на адреса из одного доменного имени, добавить перед последним правилом
0
|
|||||||||||
| 07.10.2018, 11:40 | |
|
Помогаю со студенческими работами здесь
4
Директива RewriteRule и параметры в url Изменение части url через .htaccess (RewriteRule) .htaccess настроить гибкую RewriteRule Где указывать имя хоста в Url'e для jdbc ? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование
. \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json>
Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом.
# Check if. . .
|
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так:
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347
Основана на STM32F303RBT6.
На борту пять. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|