Htaccess НЕ шаблон - PullRequest
       4

Htaccess НЕ шаблон

0 голосов
/ 24 июня 2010

У меня проблема со ссылками, и я пытаюсь решить проблему с помощью htaccess.

У меня есть каталог с изображениями, например:

PGPHX.203.jpg
PGPHX.80.jpg
PGPHX.137.jpg
...

Я хочу, чтобы все ссылки, не содержащие * .number.jpg в конце, указывали на * .203.jpg, например:

FROM: PGPHX.jpg TO: PGPHX.203.jpg
38.108.97.145/content/memberAvatars/2/QBqz6/PGPHX.jpg
http://38.108.97.145/content/memberAvatars/2/QBqz6/PGPHX.203.jpg

Просто чтобы прояснить, у меня есть эти права в htaccess:

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)\.78\.jpg$ $1\.80\.jpg [L] #size 78 no longer exists, redirect to 80

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)\.230\.jpg$ $1\.203\.jpg [L] #size 230 no longer exists, redirect to 203

RewriteRule defaultAvatar\.(png|jpg) defaultAvatar\.203\.jpg [L] #any defaultAvatar with no size, redirect to jpg
RewriteRule defaultAvatar\.(\d{1,3})\.png defaultAvatar\.$1\.jpg [L] #redirect any default avatar png, to jpg.

Спасибо за помощь, Eldad.

Ответы [ 2 ]

0 голосов
/ 24 июня 2010

Ну, это работает для меня:

RewriteRule ^(.*)\/([A-za-z0-9-_]*)\.jpg $1\/$2\.203\.jpg [NS,L] #filename with no size - redirect to 203
0 голосов
/ 24 июня 2010

Вот мое предыдущее предложение, обновленное с учетом вашего комментария:

RewriteRule ^(\w+)\.(jpg|png)$ $1.203.jpg

Предполагается, что все имена файлов, которые вы хотите переписать, имеют форму (word characters).(jpg|png).Если есть другие возможности, с которыми вам придется иметь дело, шаблон нужно настроить.

РЕДАКТИРОВАТЬ : В общем, я полагаю, вы можете попробовать

RewriteCond %{REQUEST_URI} !\d+\.(jpg|png)$
RewriteRule ^(.+)\.(jpg|png)$ $1.203.jpg
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...