Master-X
Форум | Новости | Статьи
Главная » Форум » Программинг, Скрипты, Софт, Сервисы » 
Тема: Реально ли сделать такое?
цитата
08/08/11 в 02:26
 sydoow
Реально ли сделать такое?
Чтобы при запросе к разным файлам на одном домене, например
domain.com/fahdf-faf-fafff_101.css
domain.com/fdnkdfnmd_101.css
domain.com/ndkerell-sddwww_101.css
отдавался бы один и тот же файл: 101.css
Запросы будут с разных доменов у которых конфиг хоста править нельзя.
У домена раздающего можно будет править конфиг.
цитата
08/08/11 в 09:56
 shar
Добавь в htaccess:
Код:

RewriteEngine on
RewriteRule [^./]+101.css /101.css
цитата
08/08/11 в 19:10
 sydoow
Это если один файл такой, а если таких файлов много можно ли как то сделать это не прописывая для каждого?
цитата
08/08/11 в 19:18
 shar
Тогда так:
Код:
RewriteEngine on
RewriteRule [^./]+_([^./]+).css /$1.css
цитата
08/08/11 в 20:36
 sydoow
А можно сделать чтобы для разных расширений и для подпапок?
Т.е. например:

Если: Код:
domain.com/1111222_101.css
domain.com/fdnkdfnmd_101.css
domain.com/ndkerell-sddwww_101.css

Будет отдаваться: Код:
domain.com/101.css


Если: Код:
domain.com/sjhdfhs_999999.jpg
domain.com/snnww-Jsdsjsd_999999.jpg
domain.com/mdfg-ewas-asda-w-111_999999.jpg

Будет отдаваться: Код:
domain.com/999999.jpg


Если: Код:
domain.com/kartinka/sjhdfhs_gifffka.gif
domain.com/kartinka/snnww-Jsdsjsd_gifffka.gif
domain.com/kartinka/mdfg-ewas-asda-w-111_gifffka.gif

Будет отдаваться: Код:
domain.com/kartinka/gifffka.gif
цитата
08/08/11 в 21:35
 shar
Если нужны только определенные расширения:
Код:
RewriteRule [^./]+_([^./]+)\.(jpg|css)$ /$1.$2

Если нужны все:
Код:
RewriteRule [^./]+_([^./]+)\.([^./]+)$ /$1.$2

Но тогда нельзя иметь реальные файлы с подчеркиванием в имени
цитата
08/08/11 в 21:55
 sydoow
Правильно ли я понял, если использовать код
Код:
RewriteRule [^./]+_([^./]+)\.(jpg|css)$ /$1.$2

То заместо jpg|css, можно дописать просто свои, например jpg|css|js|gif ?

______________________________

Разделитель между приставкой и реальным файлом будет нижнее подчёркивание?

______________________________

Дефисы в приставке к реальному файлу можно использовать?

______________________________

В папках будет работать данный код? Т.е. если я буду ссылаться на псевдо файл который находится в папке и реальный файл который находится в этой же папке.
Если: Код:
domain.com/kartinka/sjhdfhs_gifffka.gif
domain.com/kartinka/snnww-Jsdsjsd_gifffka.gif
domain.com/kartinka/mdfg-ewas-asda-w-111_gifffka.gif

Будет отдаваться: Код:
domain.com/kartinka/gifffka.gif
?
цитата
08/08/11 в 22:34
 shar
Расширения - да
Разделитель - подчеркивание
Дефисы можно, как и все остальное, в том числе слеш. Т.е.
Код:
domain.com/kartinka/sjhdfhs_gifffka.gif
domain.com/kartinka/papka/papka2/sjhdfhs_gifffka.gif

Будет отдавать:
Код:
domain.com/gifffka.gif

Если хочешь, чтобы только в 1 папке работало:
Код:
RewriteRule ^[^/]+_([^./]+)\.(jpg|css)$ /$1.$2

Кстати, можно сделать чтобы если существует реальный файл с таким именем, то редиректа не было:
Код:
RewriteCond %{DOCUMENT_ROOT}/$0 !-f
RewriteRule ^[^/]+_([^./]+)\.(jpg|css)$ /$1.$2
цитата
08/08/11 в 22:52
 sydoow
shar писал:
Расширения - да
Разделитель - подчеркивание
Дефисы можно, как и все остальное, в том числе слеш. Т.е.
Код:
domain.com/kartinka/sjhdfhs_gifffka.gif
domain.com/kartinka/papka/papka2/sjhdfhs_gifffka.gif

Будет отдавать:
Код:
domain.com/gifffka.gif

Т.е. все реальные файлы должны лежать в корне домена?
цитата
08/08/11 в 23:16
 shar
Ну если изначальный конфиг использовать, то да
цитата
08/08/11 в 23:32
 sydoow
Большое спасибо smail54.gif smail54.gif smail54.gif
Буду тестить через несколько дней icon_wink.gif
цитата
16/08/11 в 23:37
 RA Optimus
можно обойтись без реврайта
создать отдельную папку, которая будет использоваться на всех доменах и создать симлинк на папку для каждого домена
цитата
17/08/11 в 09:37
 sydoow
shar, ещё раз спасибо большое! Твой варик работает отлично как надо smail54.gif

А можно поподробнее и какие плюсы у такого варианта?
У меня же разные домены на различных хостингах будут запрашивать у одного домена, т.е. которым нужно и у которых есть - это разные серваки.


Эта страница в полной версии