Motor de reescritura Apache, obtiene el subdominio y la ruta posterior
-
21-08-2019 - |
Pregunta
Tengo el código básico para reescribir un subdominio en otra página.Pero, ¿cómo uso esto para obtener la ruta del directorio especificado y pasarla a mi script, así como al subdominio mismo?
código actual
RewriteCond %{HTTP_HOST} ^([^.]+)(\.example\.com)$
RewriteRule ^$ handle.php [L]
Me gustaría proporcionar handle.php con la ruta del archivo especificada después de **.example.com* y también el nombre del subdominio en el formulario handle.php?ruta=x&subdominio=y.
¡Cualquier ayuda muy apreciada!
Solución
Puedes acceder a esa información con $_SERVER['HTTP_HOST']
y $_SERVER['REQUEST_URI']
(también contiene la consulta):
$path = preg_replace('/\?.*/', '', $_SERVER['REQUEST_URI']);
$subdomain = substr($_SERVER['HTTP_HOST'], 0, strpos($_SERVER['HTTP_HOST'], '.'));
Otros consejos
Es necesario utilizar
RewriteCond %{HTTP_HOST} ^([a-z0-9-]+).example.com [NC]
RewriteRule ^(.*)$ %1/$1 [L]
-
%1
es un nombre de subdominio -
$1
es una solicitud
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow