Apache mecanismo de reescrita, get subdomínio e caminho depois
-
21-08-2019 - |
Pergunta
Eu tenho o código básico para reescrever um subdomínio para outra página. Mas como faço para usar isso para obter o caminho do diretório especificado dentro dela e passá-lo para o meu script, bem como o próprio subdomínio?
código atual
RewriteCond %{HTTP_HOST} ^([^.]+)(\.example\.com)$
RewriteRule ^$ handle.php [L]
Eu gostaria de fornecer handle.php com o caminho do arquivo especificado após **. Example.com * e também o nome de subdomínio na forma handle.php? Path = x & subdomínio = y .
Qualquer ajuda muito apreciada!
Solução
Você pode acessar essas informações com $_SERVER['HTTP_HOST']
e $_SERVER['REQUEST_URI']
(que também contêm a consulta):
$path = preg_replace('/\?.*/', '', $_SERVER['REQUEST_URI']);
$subdomain = substr($_SERVER['HTTP_HOST'], 0, strpos($_SERVER['HTTP_HOST'], '.'));
Outras dicas
Você precisa usar
RewriteCond %{HTTP_HOST} ^([a-z0-9-]+).example.com [NC]
RewriteRule ^(.*)$ %1/$1 [L]
-
%1
é um nome de subdomínio -
$1
é um pedido
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow