Скрыть index.php (или index.html) URL-адреса

Когда я набираю адрес своего сайта в браузере (mysite.com), он перенаправляется на mysite.com/index.php. Почему бы не index.html? Потому что я изменил его в файле conf в Apache 2.2.

  • Теперь я хотел бы скрыть последнюю часть «index.php». Как мне это сделать ?
  • Разве это было бы иначе, чем index.html, чем index.php?

Не было бы уродливым, если бы вы искали Google, вы попали бы на www.google.com/index.html? … это просто для эстетики, но бог – это важно для некоторых людей.

Я не знаю, зачем вам нужно использовать mod_rewrite. На моем сайте я ничего не скрывал, чтобы скрыть index.php, я просто не указываю его нигде в коде, поэтому вместо http://www.example.com/index.php?task=forum я просто пишу http://www.example.com/?task = форум. Он работает в стандартной конфигурации apache.

Если он перенаправляется (например, отправив новое местоположение в HTTP-заголовке), вы ничего не можете сделать, кроме как изменить код, который выполняет перенаправление.

С другой стороны, если ваш WebServer является Apache, существует директива конфигурации, которая может помочь:

DirectoryIndex

Когда вы устанавливаете это значение: index.php или index.html , ваш веб-сервер автоматически перенаправляется на эти внутренние файлы без изменения URL-адреса при попадании в каталог на вашем сервере, на котором настроена директива DirectoryIndex .

Полагаю, вы получите более качественные ответы, если вы опубликуете это на SERVERFAULT .

Удачи.

Это, казалось, работало в моей среде (не отображал index.php):

  <form action="." method="POST"> E-mail: <input type='password' size='50' name='email' /> <input type='submit' value='Login' /> </form> 

Вы можете легко сделать это с помощью сопоставления URL-адресов в файле http.conf или отдельных файлах .htaccess в каталогах приложений. Включите перестройку мод . Вот простой учебник.