|
|
|
| Для динамического юзербара, в htaccess подсказали сделать преобразование адреса
RewriteEngine on
RewriteRule (.*)\.png index.php?u_char=$1
Все успешно преобразует и выполняет, но появилась другая проблема, не отображает теперь саму картинку и другие изображения хранящиеся под папках этого каталога | |
|
|
|
|
|
|
|
для: Ванек2010
(23.04.2011 в 19:03)
| | Все верно, так как вы переправили все PNG-запросы на index.php. Если нужно, чтобы существующие PNG-файлы не затрагивались этим правилом, нужно добавить условие RewriteCond с флагом !-f, которое проверит, что файла с таким именем не существует и только тогда передаст управление директиве RewriteRule. | |
|
|
|
|
|
|
|
для: cheops
(23.04.2011 в 19:09)
| | Это то есть вот так?
RewriteEngine on
RewriteCond !-f
RewriteRule (.*)\.png index.php?u_char=$1 | |
|
|
|
|
|
|
|
для: Ванек2010
(23.04.2011 в 19:13)
| | Нужно сравнить с именем файла, т.е. вот так
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule (.*)\.png index.php?u_char=$1
|
| |
|
|
|
|
|
|
|
для: cheops
(23.04.2011 в 19:18)
| | Спасибо картинки отображаются, но теперь не происходит перенаправление | |
|
|
|
|
|
|
|
для: Ванек2010
(23.04.2011 в 19:20)
| | Если не сложно приведите пример адреса с png которому вы обращаетесь и который нужно перенаправить (чтобы можно было воспроизвести ситуацию)? Правильно ли я понимаю, что такого изображения физически нет? | |
|
|
|
|
|
|
|
для: cheops
(23.04.2011 в 19:34)
| | Вот по локальному адресу обращаюсь прямо на картинку, которая физически существует
http://localhost/web.1/userbars/player1.png
Перенаправление в htaccess папки userbars, а не корневой, если это важно | |
|
|
|
|
|
|
|
для: Ванек2010
(23.04.2011 в 19:39)
| | Так, изображение существует физически. Далее вы хотите чтобы оно отображалось как есть, или чтобы срабатывало перенаправление на index.php? | |
|
|
|
|
|
|
|
для: cheops
(23.04.2011 в 19:52)
| | Пользователь должен вставить на форум, в подпись, между тегами img путь до картинки
http://localhost/web.1/userbars/player1.png
А в htaccess изображение должно перенаправится на index.php и показаться | |
|
|
|
|
|
|
|
для: Ванек2010
(23.04.2011 в 19:55)
| | Тогда условие CondRewrite нам не нужно, вернее его можно оставить, заменив !-f, на -f. | |
|
|
|
|
|
|
|
для: cheops
(23.04.2011 в 20:05)
| | Все спасибо большое помогло!
Пришлось еще добавить заголовок в index
<?php
header("Content-type: image/png");
imagepng ($im);
|
| |
|
|
|
|
|
|
|
для: Ванек2010
(23.04.2011 в 19:03)
| | >Все успешно преобразует и выполняет, но появилась другая проблема, не отображает теперь
>саму картинку и другие изображения хранящиеся под папках этого каталога
А если набрать адрес с index.php - изображение отображается корректно? Может проблема в index.php (кроме этого, добавьте код в index.php, который будет сохранять пути к изображениям в отдельный файл - никакой крамолы там нет, index.php имеет возможность обратиться к этим файлам)? | |
|
|
|
|
|
|
|
для: Ванек2010
(23.04.2011 в 19:03)
| | Возможно ситуация следующая (поправьте если я ошибаюсь), вы в index.php используете сетевой путь с http://, который снова натыкается на ReWrite-преобразования до тех пор, пока не срабатывает защита от зацикливания. Лучше всего в index.php сетевой путь преобразовать в относительный, чтобы получить изображение в обход Apache. | |
|
|
|