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

Форум Apache

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

 

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

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

тема: при открытии html-файла открывать соответствующий php файл
 
 автор: rodmial   (04.11.2013 в 17:13)   письмо автору
 
 

Здравствуйте!
подскажите, как добиться того, чтобы при обращении к любому html файлу на сервере открывался соответствующий php файл (с тем же именем, но с расширением php) (при его наличии)

  Ответить  
 
 автор: cheops   (04.11.2013 в 20:10)   письмо автору
 
   для: rodmial   (04.11.2013 в 17:13)
 

Можно при помощи mod_rewrite, но если кто-то заменил html на php, ему так же будет выведен результат.

  Ответить  
 
 автор: rodmial   (05.11.2013 в 13:46)   письмо автору
 
   для: cheops   (04.11.2013 в 20:10)
 

а как при помощи mod_rewrite?
>но если кто-то заменил html на php, ему так же будет выведен результат.
ну так и должно быть. главное, чтобы ссылки на html файлы (при отсутствии этих файлов, но наличии соответствующих php файлов) были работоспособны

  Ответить  
 
 автор: serenya1983   (05.11.2013 в 16:22)   письмо автору
 
   для: rodmial   (05.11.2013 в 13:46)
 

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^.*\.html$ $1.php [NC,L]

  Ответить  
 
 автор: rodmial   (06.11.2013 в 09:20)   письмо автору
 
   для: serenya1983   (05.11.2013 в 16:22)
 

спасибо большое, попробую.

  Ответить  
 
 автор: Sfinks   (06.11.2013 в 14:53)   письмо автору
 
   для: rodmial   (06.11.2013 в 09:20)
 

не
RewriteRule ^.*\.html$ $1.php [NC,L]
а
RewriteRule ^(.*)\.html$ $1.php [NC,L]

  Ответить  
 
 автор: serenya1983   (06.11.2013 в 16:11)   письмо автору
 
   для: Sfinks   (06.11.2013 в 14:53)
 

точно

  Ответить  
 
 автор: rodmial   (06.11.2013 в 17:26)   письмо автору
 
   для: serenya1983   (06.11.2013 в 16:11)
 

хорошо что есть на земле такие люди

  Ответить  
 
 автор: rodmial   (12.11.2013 в 22:41)   письмо автору
 
   для: serenya1983   (06.11.2013 в 16:11)
 

всё работает, проверил.
а еще вопрос: как добиться такого же результата при наличии файла html?

  Ответить  
 
 автор: Sfinks   (12.11.2013 в 23:12)   письмо автору
 
   для: rodmial   (12.11.2013 в 22:41)
 

В смысле чтобы шел редирект даже если html-файл есть?

  Ответить  
 
 автор: rodmial   (13.11.2013 в 16:11)   письмо автору
 
   для: Sfinks   (12.11.2013 в 23:12)
 

ага

а ещё скажите, пожалуйста, почему при использовании .htaccess с таким содержимым на локальном сервере возникает ошибка internal server Error

  Ответить  
 
 автор: Sfinks   (13.11.2013 в 21:23)   письмо автору
 
   для: rodmial   (13.11.2013 в 16:11)
 

> ага
Нужно убрать строку
RewriteCond %{REQUEST_FILENAME} !-f

> почему при использовании .htaccess с таким содержимым на локальном сервере возникает ошибка internal server Error
Это уже надо на сервер смотреть.
Возможно поможет добавить после
RewriteEngine on
строку
RewriteBase /

  Ответить  
 
 автор: rodmial   (13.11.2013 в 21:56)   письмо автору
 
   для: Sfinks   (13.11.2013 в 21:23)
 

Большое спасибо, попробую

  Ответить  
 
 автор: rodmial   (14.11.2013 в 20:20)   письмо автору
 
   для: Sfinks   (13.11.2013 в 21:23)
 

нет, это не помогло.

  Ответить  
 
 автор: serenya1983   (03.12.2013 в 17:15)   письмо автору
 
   для: rodmial   (14.11.2013 в 20:20)
 

ошибка может возникать когда модуль Rewrite не подключен к apache.

a2enmod rewrite
service apache2 restart

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

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