Я не уверен, почему вы хотите отменить прокси-сервер всего этого, так как домен никогда не изменяется. Но если по какой-либо причине у вас есть, вы должны обратный прокси-сервер, вы можете использовать ProxyPassMatch
, который работает аналогично с ProxyPass
за исключением вы можете дать ему шаблон регулярного выражения:
ProxyPassMatch ^/(.+)$ http://mydomain.com/
Тем не менее, мне кажется, что вы на самом деле просто хотят является внутренне переписать вместо отправки совершенно новый запрос от имени одного запроса:
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/index\.(php|html?)
RewriteRule ^(.+)$/[L]
каждой «подпапка» по переменному обычно используется для отслеживания того, где пользователь получил URL (думаю, телевизор, радио и т. д.), но мы не хотим управлять более 50 версиями страницы. Поэтому идея заключалась в том, чтобы перенаправить его на ту же страницу, захватить значение подкаталога и использовать эту информацию. В идеале строка запроса была бы неплохой, но нам сказали не использовать их (читаемость, которую я предполагаю)
Если вы используете обратный прокси-сервер, вы теряете информацию с целевой страницы. Это означает, что если я перейду к, http://foo.com/bar1
, и он будет обращен проксими к http://foo.com/index.php
, сценарий index.php
не будет знать, что он был проксирован от /bar1
(хотя я думаю, что вы можете передать это как проксированные заголовки). Так что это побеждает цель. Если вы внутренне переписываете, как и выше, браузер скрыт от всего этого и не будет знать, что произошла какая-либо внутренняя маршрутизация. Вы также можете передать строку запроса, если вам нравится, так как все полностью скрыта от браузера:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ /index.php?subdir=$1 [L]
Так что с этими правилами, если кто-то идет http://foo.com/tv
и /tv
не папка или файл, он получает внутренне перенаправляется на /index.php
, а «tv» передается скрипту в качестве параметра GET «subdir».
Хороший вопрос, и, может быть, я не уверен, что мне делать ... proxypass казался правильным. Каждая «подпапка» фактически используется для отслеживания того, где пользователь получил URL (думаю, телевизор, радио и т. Д.), Но мы не хотим управлять более 50 версиями страницы. Поэтому идея заключалась в том, чтобы перенаправить его на ту же страницу, захватить значение подкаталога и использовать эту информацию. В идеале строка запроса была бы приятной, но нам сказали не использовать их (читаемость, которую я угадываю). Если у вас есть лучшая идея - я открыт :) – gin93r
@Veo конечно, см. Редактирование выше –
Я, кажется, получаю сообщение «он работает», когда я просматриваю domain.com/index.html/1 Теперь я делаю это с помощью xampp, и я помещаю его в файл .htaccess на уровне root. ' RewriteCond% {REQUEST_FILENAME}! -f RewriteCond% {REQUEST_FILENAME}! -d RewriteRule ^ (. +) $ /index.html?subdir=$1 [L] ' –
gin93r