Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Разное

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Как скрыть index.php
 
 автор: diman   (22.02.2009 в 19:06)   письмо автору
 
 

Не знаю, в тот ли форум я пишу, но если не туда, то перенаправьте меня.
Если мы загружаем сайт, то обычно в строке браузера мы видим "site/index.php".
Я прочитал, что можно скрыть index.php для безопасности. Для этого надо создать в корневой директории файл .htaccess и в нем прописать следующее.

RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]

Но при запуске сайта я вижу ошибку

Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.


Помогите, что здесь не так?

  Ответить  
 
 автор: а-я   (22.02.2009 в 19:26)   письмо автору
 
   для: diman   (22.02.2009 в 19:06)
 

это наверно

Options -Indexes
DirectoryIndex index.php index.html index.htm

  Ответить  
 
 автор: diman   (22.02.2009 в 20:17)   письмо автору
 
   для: а-я   (22.02.2009 в 19:26)
 

Это никак не связано с настройками php.ini.
По умолчанию имя файла index.php всегда отображается в строке URL. Это не совсем красиво. Эта проблема решается именно правилом в файле .htaccess.
Дается приведенный выше код. А что за правило такое я не понял и нигде не смог найти?
Это еще называется убрать сегмент index.php.

Может так будет яснее о чем идет речь

  Ответить  
 
 автор: sl1p   (22.02.2009 в 21:35)   письмо автору
 
   для: diman   (22.02.2009 в 20:17)
 

раскомментируйте в httpd строку LoadModule rewrite_module modules/mod_rewrite.so

  Ответить  
 
 автор: Diman   (22.02.2009 в 22:02)   письмо автору
 
   для: sl1p   (22.02.2009 в 21:35)
 

Да, это было уже ближе. Раскоментировал, ошибки не выдало. Но сегмент index также и остался.

  Ответить  
 
 автор: sl1p   (22.02.2009 в 22:52)   письмо автору
 
   для: Diman   (22.02.2009 в 22:02)
 

Он так и останется если его писать.
Вы наверное не правильно поняли зачем это надо, тут скорее "красивые ссылки".
типа: http://yourdom.com/cat/sub_cat
на
http://yourdom.com/index.php?cat=cat&sub_cat=sub_cat

  Ответить  
 
 автор: Diman   (22.02.2009 в 22:57)   письмо автору
 
   для: sl1p   (22.02.2009 в 22:52)
 

Да.
Должно быть как в первом варианте. Как это сделать в htaccess?

  Ответить  
 
 автор: Рома   (23.02.2009 в 13:37)   письмо автору
 
   для: Diman   (22.02.2009 в 22:57)
 

послав заголовок header("location: http://site.ru/?key=value"); скроешь index.php. ссылки в коде тоже должны быть вида <a href="?key=value">ссылка</a>

работает только в index.php

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования