Я бьюсь головой об стену, пытаясь сделать то, что должно быть довольно просто в .htaccess, но безуспешно. Надеюсь, кто-нибудь мне поможет.
Мне нужно выполнить 3 основные задачи: 1) Перенаправить мой домен www.sample.com на www.sample.com/subdir1/cgi-bin/ 2) Если страница NULL или index.html, загрузить скрипт home.php 3) Скрыть подкаталоги "subdir1/cgi-bin"
Например, когда кто-то заходит на www.sample.com, он увидит: www.sample.com/home.php
но
Сервер на самом деле будет читать www.sample.com/subdir1/cgi-bin/home.php
Спасибо!
решение1
У вас может быть файл .htaccess, который выглядит следующим образом:
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
Затем вы должны убедиться, что ваш сервер Apache разрешает перезапись. Чтобы добиться этого, отредактируйте файл/etc/apache2/apache2.conf. В этом файле найдите каталог, который вы используете, и измените "AllowOverride None" на "AllowOverride all". Вот пример:
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride all
Require all granted
</Directory>
После этого активируйте модуль перезаписи Apache, выполнив:
sudo a2enmod rewrite
В конце перезапустите Apache:
sudo service apache2 restart