реврайты для nginx

Post Reply
nikista
Posts: 300
Joined: Fri Dec 21, 2012 8:26 am

реврайты для nginx

Post by nikista »

в мане есть список реврайтов которые необходимо прописать в нгинкс http://smartcj.com/wiki/doku.php?id=ru: ... ep_by_step

Какой из них прописывать?

Code: Select all

RewriteEngine On
RewriteCond %{QUERY_STRING} ^(.+)$ 
RewriteRule ^gallery/(.*)/(.*)/index.html$ /scj/cgi/out.php?link=images/%{QUERY_STRING}&url=content&content_id=$2 [L]
RewriteRule ^gallery/(.*)/(.*)/index.html$ /scj/tube/?content_id=$2 [L]
RewriteRule ^gallery/(.*)/(.*)/$ /scj/tube/?content_id=$2 [L]
RewriteRule ^gallery/(.*)/(.*)/([0-9]{1,2}).html$ /scj/tube/?content_id=$2&item_id=$3 [L]

#slug galleries
RewriteCond %{QUERY_STRING} ^(.+)$ 
RewriteRule ^gallery/([^/]+)/index.html$ /scj/cgi/out.php?link=images/%{QUERY_STRING}&url=content&slug=$1 [L]
RewriteRule ^gallery/([^/]+)/index.html$ /scj/tube/?slug=$1 [L]
RewriteRule ^gallery/([^/]+)/$ /scj/tube/?slug=$1 [L]
RewriteRule ^gallery/([^/]+)/([0-9]{1,2}).html$ /scj/tube/?slug=$1&item_id=$2 [L]

RewriteCond %{QUERY_STRING} ^(.+)$ 
RewriteRule ^category/([^/]+)/$ /scj/cgi/out.php?link=images/%{QUERY_STRING}&url=content&p=100&skip_to_cookie=true&skip_sell=true&group_name=$1&order=ctr [L]
RewriteRule ^category/([^/]+)/$ /scj/tube/index.php?group_name=$1 [L]
RewriteCond %{QUERY_STRING} ^(.+)$ 
RewriteRule ^category/([^/]+)/([^/]+)/([^/]+)/$ /scj/cgi/out.php?link=images/%{QUERY_STRING}&url=content&p=100&skip_to_cookie=true&skip_sell=true&group_name=$1&order=$2&page=$3 [L]
RewriteRule ^category/([^/]+)/([^/]+)/([^/]+)/$ /scj/tube/index.php?group_name=$1&order=$2&page=$3 [L]
RewriteCond %{QUERY_STRING} ^(.+)$ 
RewriteRule ^category/([^/]+)/([^/]+)/([^/]+)/([^/]+)/$ /scj/cgi/out.php?link=images/%{QUERY_STRING}&url=content&p=100&skip_to_cookie=true&skip_sell=true&group_id=$1&order=$3&page=$4 [L]
RewriteRule ^category/([^/]+)/([^/]+)/([^/]+)/([^/]+)/$ /scj/tube/index.php?group_id=$1&order=$3&page=$4 [L]


RewriteRule ^tag/(.*)/$ /scj/tube/index.php?tag=$1
RewriteRule ^search/(.*)/(.*)/(.*)/(.*)/$ /scj/tube/index.php?search_type=$1&search=$2&order=$3&page=$4
RewriteRule ^action/(.*)/(.*)/$ /scj/tube/index.php?action=$1&action_params=$2 [L]
RewriteRule ^action/(.*)$ /scj/tube/index.php?action=$1 [L]

RewriteRule ^go/(.*)/$ /scj/tube/?action=sponsor&sponsor_slug=$1& [L]
RewriteRule ^search_log/(.*)/$ /scj/tube/?search_log=all&page=$1& [L]


RewriteRule ^sponsor/(.*)/$ /scj/tube/?sponsor_slug=$1&force_template=sponsor_page [L]
RewriteRule ^sponsor_galleries/(.*)/(.*)/$ /scj/tube/?sponsor_slug=$1&page=$2&force_template=sponsor_list [L]

RewriteRule ^models/$ /scj/tube/?force_template=model_list [L]
RewriteRule ^models/(.*)/$ /scj/tube/?force_template=model_list&model_first_letter=$1 [L]
RewriteRule ^model/(.*)/(.*)/(.*)/$ /scj/tube/?model_slug=$1&force_template=model_galleries&order=$2&page=$3 [L]
RewriteRule ^model/(.*)/$ /scj/tube/?model_slug=$1&force_template=model_galleries [L]

RewriteRule ^report/(.*)/$ /scj/tube/?content_id=$1&force_template=content_report [L] 


или

Code: Select all

if ($args) {
rewrite ^/gallery/([^/]+)/index.html$ /scj/cgi/out.php?link=images/$query_string&url=content&slug=$1 last;
}
rewrite ^/gallery/([^/]+)/index.html$ /scj/tube/?slug=$1 last;
rewrite ^/gallery/([^/]+)/$ /scj/tube/?slug=$1 last;
rewrite ^/gallery/([^/]+)/(.*).html$ /scj/tube/?slug=$1&item_id=$2 last;

if ($args) {
rewrite ^/category/([^/]+)/$ /scj/cgi/out.php?link=images/$query_string&url=content&p=100&skip_to_cookie=true&skip_sell=true&group_name=$1&order=ctr last;
}
rewrite ^/category/([^/]+)/$ /scj/tube/index.php?group_name=$1 last;
if ($args) {
rewrite ^/category/([^/]+)/([^/]+)/([^/]+)/$ /scj/cgi/out.php?link=images/$query_string&url=content&p=100&skip_to_cookie=true&skip_sell=true&group_name=$1&order=$2&page=$3 last;
}
rewrite ^/category/([^/]+)/([^/]+)/([^/]+)/$ /scj/tube/index.php?group_name=$1&order=$2&page=$3 last;

if ($args) {
rewrite ^/category/([^/]+)/([^/]+)/([^/]+)/([^/]+)/$ /scj/cgi/out.php?link=images/$query_string&url=content&p=100&skip_to_cookie=true&skip_sell=true&group_id=$1&order=$3&page=$4 last;
}
rewrite ^/category/([^/]+)/([^/]+)/([^/]+)/([^/]+)/$ /scj/tube/index.php?group_id=$1&order=$3&page=$4 last;

rewrite ^/tag/(.*)/$ /scj/tube/index.php?tag=$1;
rewrite ^/search/(.*)/(.*)/(.*)/(.*)/$ /scj/tube/index.php?search_type=$1&search=$2&order=$3&page=$4;
rewrite ^/action/(.*)/(.*)/$ /scj/tube/index.php?action=$1&action_params=$2 last;
rewrite ^/action/(.*)$ /scj/tube/index.php?action=$1 last;

rewrite ^/go/(.*)/$ /scj/tube/?action=sponsor&sponsor_slug=$1& last;
rewrite ^/search_log/(.*)/$ /scj/tube/?search_log=all&page=$1& last;

rewrite ^/sponsor/(.*)/$ /scj/tube/?sponsor_slug=$1&force_template=sponsor_page last;
rewrite ^/sponsor_galleries/(.*)/(.*)/$ /scj/tube/?sponsor_slug=$1&page=$2&force_template=sponsor_list last;

rewrite ^/models/$ /scj/tube/?force_template=model_list last;
rewrite ^/models/(.*)/$ /scj/tube/?force_template=model_list&model_first_letter=$1 last;
rewrite ^/model/(.*)/(.*)/(.*)/$ /scj/tube/?model_slug=$1&force_template=model_galleries&order=$2&page=$3 last;
rewrite ^/model/(.*)/$ /scj/tube/?model_slug=$1&force_template=model_galleries last;

rewrite ^/report/(.*)/$ /scj/tube/?content_id=$1&force_template=content_report last;

они как я понял дублируют друг друга, я понимаю что первый для хтакес второй чисто для нгикс, только какой актуальнее.

И правильно ли я понимаю что создавать htaccess на корне домена не нужно в случае с использованием нгикс
nikista
Posts: 300
Joined: Fri Dec 21, 2012 8:26 am

Re: реврайты для nginx

Post by nikista »

и поясните плиз чем отличается old style от style 2.0

Спасибо!
nikista
Posts: 300
Joined: Fri Dec 21, 2012 8:26 am

Re: реврайты для nginx

Post by nikista »

Спасибо за ответ, а что нового добавилось в #style 2.0?

т.е чем они отлчиаются
admin
Site Admin
Posts: 37242
Joined: Wed Sep 10, 2008 11:43 am

Re: реврайты для nginx

Post by admin »

добавилось 4 строки для другого варианта урла галер
все что добавилось видно по самому htaccess
Don't forget to run script update
nikista
Posts: 300
Joined: Fri Dec 21, 2012 8:26 am

Re: реврайты для nginx

Post by nikista »

Спасибо
vendo
Posts: 71
Joined: Thu Nov 29, 2012 3:45 pm

Re: реврайты для nginx

Post by vendo »

Подскажите как правильно сделать реврайты, чтобы видео было доступно по http://domain.com/video_title.html
т.е. убрать "gallery" надо

Сейчас у меня вот так:

Code: Select all

RewriteRule ^gallery/(.*)/(.*)/index.html$ /scj/cgi/out.php?link=images/%{QUERY_STRING}&url=content&content_id=$2 [L]
RewriteRule ^gallery/(.*)/(.*)/index.html$ /scj/tube/?content_id=$2 [L]
RewriteRule ^gallery/(.*)/(.*)/$ /scj/tube/?content_id=$2 [L]
RewriteRule ^gallery/(.*)/(.*)/([0-9]{1,2}).html$ /scj/tube/?content_id=$2&item_id=$3 [L]

#slug galleries
RewriteCond %{QUERY_STRING} ^(.+)$ 
RewriteRule ^gallery/([^/]+)/index.html$ /scj/cgi/out.php?link=images/%{QUERY_STRING}&url=content&slug=$1 [L]
RewriteRule ^gallery/([^/]+)/index.html$ /scj/tube/?slug=$1 [L]
RewriteRule ^gallery/([^/]+)/$ /scj/tube/?slug=$1 [L]
RewriteRule ^gallery/([^/]+)/([0-9]{1,2}).html$ /scj/tube/?slug=$1&item_id=$2 [L]
Пробовал поменять "^gallery/" на "^" - всё работало, но в админке смарта появились тоже редиректы. Как правильно сделать ?
admin
Site Admin
Posts: 37242
Joined: Wed Sep 10, 2008 11:43 am

Re: реврайты для nginx

Post by admin »

К сожалению готового решения нет.
Обратитесь к админу или закажите кастом реврайты.
Don't forget to run script update
Post Reply