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