RewriteEngine On
RewriteBase test/
RewriteRule ^img\.png$ img.php
ErrorDocument 404 test/missing.html
Rewrite в .htaccess
:o Заранее извиняюсь за не совсем корректное (возможно) название темы
На хосте имеется директория test в которой находятся файлы:
bground.png - необходим для img.php
img.php - скрипт для генерации png картинки
missing.html - страница 404
Кроме того в корне имеется html файл test.html:
[html]
<html>
<head>Test</head>
<body>
...
<img src="test/img.php" />
...
</body>
</html>[/html]
Необходимо скрыть вызов скрипта от пользователя, т.е. <img src="test/img.php" /> заменить на <img src="test/img.png" /> (только такой вариант!), но чтоб все равно вызывался img.php
Умные люди порекомендовали добавить в директорию test файл .htaccess с такого содержания:
Код:
Вопрос в том, почему это не работает?
Не RewriteRule ^img\.png$ img.php, не ErrorDocument 404 test/missing.html
Тестирую локально, TopServer 2.1 (Apache 2.0.59, PHP 5.1.6)
а
Код:
RewriteEngine On
ErrorDocument 404 /test/missing.html
ErrorDocument 404 /test/missing.html
не достаточно?
Цитата: clgs
может из-за того что у Вас это коментарий (#)?
извиняюсь за оплошность - комментарий (#) не в счет - забыл убрать!
.htaccess:
Код:
RewriteEngine On
RewriteBase test/
RewriteRule ^img\.png$ img.php
ErrorDocument 404 test/missing.html
RewriteBase test/
RewriteRule ^img\.png$ img.php
ErrorDocument 404 test/missing.html
при запросе localhost/test/img.png (или localhost/test/img.php) сервер выдает ошибку 500
Код:
RewriteEngine On
RewriteBase /test/
RewriteRule ^img\.png$ img.php
ErrorDocument 404 test/missing.html
RewriteBase /test/
RewriteRule ^img\.png$ img.php
ErrorDocument 404 test/missing.html
сейчас вылетает ошибка 403
если в .htaccess оставить только:
Код:
#RewriteEngine On
#RewriteBase /test/
#RewriteRule ^img\.png$ img.php
ErrorDocument 404 /test/missing.html
#RewriteBase /test/
#RewriteRule ^img\.png$ img.php
ErrorDocument 404 /test/missing.html
- страница с ошибкой missing.html работает(!), а если раскоменнтировать хотя бы так:
Код:
RewriteEngine On
#RewriteBase /test/
#RewriteRule ^img\.png$ img.php
ErrorDocument 404 /test/missing.html
#RewriteBase /test/
#RewriteRule ^img\.png$ img.php
ErrorDocument 404 /test/missing.html
- вылетает ошибка 403 хоть для чего(!) - php, html, png
RewriteRule ^img.png$ img.php
Проблема была имеено в Top Server 2.1!
Решение описано здесь: http://forum.php.su/topic.php?forum=30&topic=162
Включи режим показа скрытых файлов. Именно такой атрибут имеет .htaccess.
Цитата: Aniliellamp
Включи режим показа скрытых файлов. Именно такой атрибут имеет .htaccess.
Бред.