На этот вопрос уже есть ответ здесь:
Мой Apache 2.2 работает на порту "8080" Я хочу позвонить URL моего сайта http://www.example.in:8080/abc/xyz.html/index.php
(xyz.html - это папка)
как ....
http : //www.example.in: 8080 / abc / xyz.html
Кто-нибудь может мне помочь с .htaccess для этого ..
Правило будет зависеть от того, как именно вы хотите, чтобы оно вело себя.
RewriteEngine On
RewriteRule ^(.*).html $1.php
может приблизить вас. Затем создайте файл /wwwroot/abc/xyz.php или что-то еще вместо /wwwroot/abc/xyz.html/index.php
. В конечном итоге вы ищете (поиск в Google) способ перезаписать html-файлы на php, которые соответствует вашему варианту использования.
Вот ваша цель:
RewriteEngine On
RewriteRule ^(.*).html $1.html/index.php
Но я думаю, вы можете сделать альтернативные варианты, которые не будут стоить вам создания всех этих каталогов ... Или, может быть, вы правы, это правильный и единственный способ для этого (для ваших целей).
Обновление
Вы не можете выполнить это действие, потому что браузер будет продолжать перенаправлять ... На Apache по умолчанию он перенаправляет / dir в / dir /, если он доступен, но я думаю, вы можете отключить это из файла конфигурации (это возможно, по крайней мере, на nGinx), но это заставит вас и ваших посетителей поставить "/ "после каждого URL в случае каталога. Наш .htaccess снова перенаправит его как перезапись и никогда не получит правильный путь ... Поэтому вместо этого вы можете использовать страницу .htm следующим образом:
RewriteEngine On
RewriteRule ^(.*).htm $1.html/index.php
Или (в большинстве случаев) любая другая форма, которую вы выберете, будет работать нормально.