Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   mod_rewrite запрет обработки директорий (https://forum.antichat.xyz/showthread.php?t=71824)

PiNzit 28.05.2008 17:16

mod_rewrite запрет обработки директорий
 
существует .htaccess
PHP код:

Options FollowSymlinks  
RewriteEngine On  
RewriteRule 
^([A-Za-z0-9]+)/$ index.php?categoryID=$1  
RewriteRule 
^.htaccess*$ - [F

в скриптах должны отображаться картинки из директории images, как запретить ее обработку реврайтом?

пробовал найденную в инете RewriteRule ^images/.*$ - [L] но безрезультатно((

Naydav 28.05.2008 17:34

попробуй так:
Цитата:

RewriteRule ^images/(.*)$ images/$1 [L]
и это выражение должно быть первым


Это работает:
PHP код:

Options FollowSymlinks  
RewriteEngine On 
RewriteRule 
^images/(.*)$  images/$[L]  
RewriteRule ^([A-Za-z0-9]+)/$ index.php?categoryID=$1  
RewriteRule 
^.htaccess*$ - [F


PiNzit 28.05.2008 17:52

уже пробовал, не работает(

Naydav 28.05.2008 18:00

а если ты комментируешь
# RewriteRule ^([A-Za-z0-9]+)/$ index.php?categoryID=$1

работает?

попробуй дописать RewriteBase /
Цитата:

RewriteEngine on
Options +FollowSymlinks
RewriteBase /
PHP код:

RewriteEngine on
Options 
+FollowSymlinks
RewriteBase 
/

RewriteRule ^images/(.*)$  images/$[L]  
RewriteRule ^([A-Za-z0-9]+)/$ index.php?categoryID=$1  
RewriteRule 
^.htaccess*$ - [F


PiNzit 28.05.2008 19:26

нет не работает с комментом, всегда когда присутствует строка
RewriteRule ^images/(.*)$ images/$1 [L]
выдает 404 ошибку

Naydav 28.05.2008 19:36

Цитата:

Options FollowSymlinks
RewriteEngine On
RewriteBase /
#RewriteRule ^images/(.*)$ images/$1 [L]
#RewriteRule ^([A-Za-z0-9]+)/$ index.php?categoryID=$1
#RewriteRule ^.htaccess*$ - [F]
А так работает? Я имею ввиду отображаються ли рисунки Если нет то ошибка не в htaccess, может папка по другому называеться?, типа image

хотя почему у тебя картинки не отображаються, странно...
попробу й поставить в src="/images/test.gif", слеш перед images

PiNzit 28.05.2008 20:12

Цитата:

Options FollowSymlinks
RewriteEngine On
#RewriteBase /
RewriteRule ^images/(.*)$ images/$1 [L]
RewriteRule ^([A-Za-z0-9]+)/$ index.php?categoryID=$1
RewriteRule ^.htaccess*$ - [F]
так убралась ошибка 404 но всеранво без картинок
папка точно images в теги img пробовал дописывать / перед путем аналогично

FeraS 28.05.2008 20:29

Возможно я недопонял, но может это пригодится

Naydav 28.05.2008 20:31

Цитата:

Options FollowSymlinks
RewriteEngine On
RewriteBase /
#RewriteRule ^images/(.*)$ images/$1 [L]
#RewriteRule ^([A-Za-z0-9]+)/$ index.php?categoryID=$1
#RewriteRule ^.htaccess*$ - [F]
Говорю попробуй так, отображаються ли рисунки
Если нет то ошибка не в htaccess

NOmeR1 28.05.2008 20:44

Имхо
Код:

RewriteRule ^(?!images/)([A-Za-z0-9]+)/$ index.php?categoryID=$1

PiNzit 28.05.2008 21:22

Naydav так вообще 404 ошибка говорю же
NOmeR1 думаю ыт не совесм понял вопрос...
FeraS спасибо, но не решает моего вопроса(

Naydav 28.05.2008 22:39

404 ошибка, если все закоментировано?
удали(переименнуй) .htaccess, будут отображаться рисунки?

blackybr 28.05.2008 23:24

а тупо запретить к рерайту ту директорию с картинками?

PiNzit 31.05.2008 15:50

Naydav нет, картинки пропадают только если обращаться по реврайтным ссылкам, по обычным они прекрасно работали и работают сейчас
blackybr дык это и необходимо сделать, но что-то никак не выходит =))

PiNzit 04.06.2008 17:18

Да здравствует Я и все помогавшие)))
все оказалось банально, хтэйсес содержал
Цитата:

RewriteRule ^images/(.*)$ images/$1 [L]
RewriteRule ^([0-9]+)/$ index.php?categoryID=$1
то есть http://site.com/?categoryID=123 => http://site.com/123/
а это значит, что то что <img src="images/blablabla.gif"> справедливо не будет работать в случае с реврайтными путями без "../"
если праивть тег img то все работает, но хотелось бы решить эту задачу с помощью .htaccess я с его синтаксисом пока не очень лажу, по этому прошу подсказать, как мне модифицировать первую строку из циаты, чтобы получить "*/images/blablabla.gif" -> "images/blablabla.gif" (то есть где-то в начале строки надо добавить *)


Время: 20:49