Правило перезаписи .htaccess для добавления строки в середину URL - PullRequest
1 голос
/ 10 июня 2010

Используя правило переписывания .htaccess, мне нужно добавить «? Q =» перед путем к любому URL, содержащему слово «imagecache»

Поэтому, если URL:

http://mysite.com/sites/default/files/imagecache/myimage.jpg

... тогда он действительно попытается:

http://mysite.com/?q=sites/default/files/imagecache/myimage.jpg

Но это ТОЛЬКО произойдет, если URL содержит "imagecache".В противном случае он не переписывается.

Кроме того, это произойдет только в том случае, если /sites/default/files/imagecache/myimage.jpg еще не является существующим файлом изображения.Я считаю, что могу сделать это, используя:

RewriteCond %{REQUEST_FILENAME} !-f

... верно?Это только первая часть, которую я не могу понять.

Ответы [ 2 ]

1 голос
/ 10 июня 2010

Как то так?:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*imagecache.*)$ /?q=$1 [L,QSA]
0 голосов
/ 10 июня 2010
RewriteRule ^mysite.com/(.*)/imagecache/(.*)$ mysite.com/?q=$1/imagecache/$2
...