pregunta de htaccess sobre reescritura y redirección

pregunta de htaccess sobre reescritura y redirección

Me he estado golpeando la cabeza contra la pared tratando de hacer lo que debería ser bastante sencillo en .htaccess pero sin éxito. Espero que alguien pueda ayudarme.

Necesito lograr 3 cosas básicas: 1) Redirigir mi dominio www.sample.com a www.sample.com/subdir1/cgi-bin/ 2) Si la página es NULL o index.html, cargar el script home.php 3 ) Ocultar los subdirectorios "subdir1/cgi-bin"

Por ejemplo, cuando alguien visita www.sample.com, verá: www.sample.com/home.php

pero

En realidad, el servidor estaría leyendo www.sample.com/subdir1/cgi-bin/home.php

¡Gracias!

Respuesta1

Puede tener un archivo .htaccess similar a este:

Options +FollowSymLinks
IndexIgnore */*

# Turn on the RewriteEngine
RewriteEngine On

# When accessing root
DirectoryIndex subdir1/cgi-bin/home.php

# Rules
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . subdir1/cgi-bin/home.php

Luego debes asegurarte de que tu servidor Apache autorice la reescritura. Para lograr esto, edite el archivo./etc/apache2/apache2.conf. En este archivo, busque el directorio que utiliza y cambie "AllowOverride Ninguno" por "AllowOverride todo". Aquí hay un ejemplo :

<Directory /var/www/>
        Options Indexes FollowSymLinks
        AllowOverride all
        Require all granted
</Directory>

Después de eso, active el módulo de reescritura de Apache ejecutando:

sudo a2enmod rewrite

Al final, reinicie Apache:

sudo service apache2 restart

información relacionada