Sheffff

Рейтинг
19
Регистрация
28.01.2018

Я вот думаю, что крепость в правде. У кого правда – тот и крепче

То что, если не настраивать фильтр покупает несколько ссылок на одной странице — жирный минус. Я как новичок не знал этого, пришлось руками перебирать 1к ссылок((

Ещё заметил маленький баг(фичу?) : ссылки "находящиеся на модерации" массово не архивируются, следовательно, приходится удалять по одной.

Колупаюсь битый час, не пойму как ссылки покупать. Есть видео с новым интерфейсом?

NikeFIT:
Если нормальный дроп, то будет очень еффективно.
а лучше, если через прокладку такое делать. то есть 3 дропа на 1, а потом этот 1 на свой. если все домены хорошие, то страница взлетит.

А зачем прокладка?

boobi:
а как закрывают зеркала, что бы их не палили?

на посадочные страницы вешают (не на главную)

ivan-lev:
Так выдавайте..
А как nginx до передачи запроса "куда надо" узнает, что генерит CMS?? =)

Да, спасибо, понял)

Ещё почитал док по гуглу, они пишут, что бот норм смотрит на двойной редирект, даже на тройной.

Вопрос считаю решённым, всем спасибо :)

ivan-lev:
Ну.. или хотя бы максимально regexp-ами прикрыться..

+

Я не до конца понимаю иерархию и логику переадресаций. Возможно, чтобы несколько внутрисерверных переадресаций было, до выдачи ответа клиенту?

В общем, цели следующей хочу добиться: всё, что не генерит CMS выдавать 301.

Sitealert:
То есть со всех страниц "зеркала" - редирект на главную? Тогда так
		if ($http_host !~ site1\.ru){

rewrite ^ https://site1.ru permanent;
}

Да, спасибо, я в курсе этой штуки, но исходя из рекомендаций гугла и яндекса, не есть гуд, когда целиком домен привязывается на 1 стр. То есть, бот должен при этом видеть и ходить по внутренним зеркала, которые выдавали бы 301 на соответствующие внутренние основного сайта.

Х.З.:
Наверняка https и все находятся на одном ip?

Зачем постоянный редирект? Можно же так сделать
server_name zerkalo1.ru www.zerkalo1.ru www.site1.ru site1.ru; 

if ($http_host !~ "^site1.ru$"){
return 301 https://site1.ru$request_uri;
}
В одной секции server все опишите, и что-то вы недописываете, как же он у вас php обрабатывает, не увидел данного локейшена))

Спасибо, почистил конфиг по указаниям.

За обработку php отвечает common-loc.inc

вот он:

location  ~ \.php$ {

# proxy_cache cache;
try_files $uri =404;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi_params;
}

Второй конфиг отличается от первого не сильно:



server {
server_name zerkalo2.ru www.zerkalo2.ru www.site2.ru site2.ru;
return 301 https://site2.ru$uri;

root '/www/site2.ru/';
include /etc/nginx/conf.d/common.inc;
error_page 400 401 403 404 500 /404.php;
rewrite ^/page/(.*)$ /index.php?cstart=$1 last;

rewrite ^(.*)/rss.xml$ /404.php last;
rewrite ^/video/(.*)-([0-9]+)+$ /index.php?newsid=$2 last;
rewrite ^/videos/(.+)/(.+)$ /get.php?hash=$1&filename=$2 last;

location / {
try_files $uri $uri/ =404;
rewrite "^/([^.]+)/page/([0-9]+)" /index.php?do=cat&category=$1&cstart=$2 last;
rewrite "^/([^.]+)(/?)+$" /index.php?do=cat&category=$1 last;
index index.php index.html index.htm;
include /etc/nginx/conf.d/common-loc.inc;
}

location /tags/ {
rewrite ^/tags/([^/]*)(/?)+$ /index.php?do=tags&tag=$1 last;
rewrite ^/tags/([^/]*)/page/([0-9]+)(/?)+$ /index.php?do=tags&tag=$1&cstart=$2 last;
include /etc/nginx/conf.d/common-loc.inc;
}

location /user/ {
rewrite ^/user/([^/]*)/rss.xml$ /engine/rss.php?subaction=allnews&user=$1 last;
rewrite ^/user/([^/]*)(/?)+$ /index.php?subaction=userinfo&user=$1 last;
rewrite ^/user/([^/]*)/page/([0-9]+)(/?)+$ /index.php?subaction=userinfo&user=$1&cstart=$2 last;
rewrite ^/user/([^/]*)/news(/?)+$ /index.php?subaction=allnews&user=$1 last;
rewrite ^/user/([^/]*)/news/page/([0-9]+)(/?)+$ /index.php?subaction=allnews&user=$1&cstart=$2 last;
rewrite ^/user/([^/]*)/news/rss.xml(/?)+$ /engine/rss.php?subaction=allnews&user=$1 last;
include /etc/nginx/conf.d/common-loc.inc;
}

location /catalog/ {
rewrite ^/catalog/([^/]*)/rss.xml$ /engine/rss.php?catalog=$1 last;
rewrite ^/catalog/([^/]*)(/?)+$ /index.php?catalog=$1 last;
rewrite ^/catalog/([^/]*)/page/([0-9]+)(/?)+$ /index.php?catalog=$1&cstart=$2 last;
include /etc/nginx/conf.d/common-loc.inc;
}

location /newposts {
rewrite ^/newposts(/?)+$ /index.php?subaction=newposts last;
rewrite ^/newposts/page/([0-9]+)(/?)+$ /index.php?subaction=newposts&cstart=$1 last;
include /etc/nginx/conf.d/common-loc.inc;
}

location /favorites {
rewrite ^/favorites(/?)+$ /index.php?do=favorites last;
rewrite ^/favorites/page/([0-9]+)(/?)+$ /index.php?do=favorites&cstart=$1 last;
include /etc/nginx/conf.d/common-loc.inc;
}

location ~ \.(html|xml) {
rewrite "^/([^.]+)/page,([0-9]+),([0-9]+),([0-9]+)-(.*).html(/?)+$" /index.php?newsid=$4&news_page=$2&cstart=$3 last;
rewrite "^/([^.]+)/page,([0-9]+),([0-9]+)-(.*).html(/?)+$" /index.php?newsid=$3&news_page=$2 last;
rewrite "^/([^.]+)/([0-9]+)-(.*).html(/?)+$" /index.php?newsid=$2 last;
rewrite "^/page,([0-9]+),([0-9]+),([0-9]+)-(.*).html(/?)+$" /index.php?newsid=$3&news_page=$1&cstart=$2 last;
rewrite "^/page,([0-9]+),([0-9]+)-(.*).html(/?)+$" /index.php?newsid=$2&news_page=$1 last;
rewrite "^/print:page,([0-9]+),([0-9]+)-(.*).html(/?)+$" /engine/print.php?news_page=$1&newsid=$2 last;
rewrite "^/([0-9]+)-(.*).html(/?)+$" /index.php?newsid=$1 last;
rewrite "^/static/(.*).html(/?)+$" /index.php?do=static&page=$1 last;
rewrite ^/rules.html$ /index.php?do=rules last;
rewrite ^/statistics.html$ /index.php?do=stats last;
rewrite ^/addnews.html$ /index.php?do=addnews last;
rewrite ^/([^.]+)/rss.xml$ /engine/rss.php?do=cat&category=$1 last;
rewrite ^/page,([0-9]+),([^/]+).html$ /index.php?do=static&page=$2&news_page=$1 last;
rewrite ^/print:([^/]+).html$ /engine/print.php?do=static&page=$1 last;
rewrite ^/rss.xml$ /engine/rss.php last;
rewrite ^/([^/]+).html$ /index.php?do=static&page=$1 last;
include /etc/nginx/conf.d/common-loc.inc;
}
}


server {

listen 443 ssl http2;

server_name www.site2.ru site2.ru;

#return 301 https://site2.ru$uri;

if ($http_host = "www.site2.ru") {
rewrite ^ https://site2.ru$request_uri permanent;
}


root '/www/site2.ru/';
include /etc/nginx/conf.d/common.inc;
error_page 400 401 403 404 500 /404.php;
rewrite ^/page/(.*)$ /index.php?cstart=$1 last;


# Указываем пути к сертификатам
ssl_certificate /etc/letsencrypt/live/site2.ru/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/site2.ru/privkey.pem;

ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;

ssl_dhparam /etc/ssl/certs/dhparam.pem;
ssl_ciphers 'ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA';
ssl_session_timeout 1d;
ssl_session_cache shared:SSL:50m;

# позволяем серверу прикреплять OCSP-ответы, тем самым уменьшая время загрузки страниц у пользователей
ssl_stapling on;
ssl_stapling_verify on;
add_header Strict-Transport-Security max-age=15768000;

location ~ /.well-known {
allow all;
}


rewrite ^(.*)/rss.xml$ /404.php last;
rewrite ^/video/(.*)-([0-9]+)+$ /index.php?newsid=$2 last;
rewrite ^/videos/(.+)/(.+)$ /get.php?hash=$1&filename=$2 last;

location / {
try_files $uri $uri/ =404;
#proxy_send_timeout 9000000;
#proxy_read_timeout 9000000;
#fastcgi_connect_timeout 9000000;
#fastcgi_send_timeout 9000000;
#fastcgi_read_timeout 9000000;
rewrite "^/([^.]+)/page/([0-9]+)" /index.php?do=cat&category=$1&cstart=$2 last;
rewrite "^/([^.]+)(/?)+$" /index.php?do=cat&category=$1 last;
index index.php index.html index.htm;
include /etc/nginx/conf.d/common-loc.inc;
}

location /tags/ {
rewrite ^/tags/([^/]*)(/?)+$ /index.php?do=tags&tag=$1 last;
rewrite ^/tags/([^/]*)/page/([0-9]+)(/?)+$ /index.php?do=tags&tag=$1&cstart=$2 last;
include /etc/nginx/conf.d/common-loc.inc;
}

location /user/ {
rewrite ^/user/([^/]*)/rss.xml$ /engine/rss.php?subaction=allnews&user=$1 last;
rewrite ^/user/([^/]*)(/?)+$ /index.php?subaction=userinfo&user=$1 last;
rewrite ^/user/([^/]*)/page/([0-9]+)(/?)+$ /index.php?subaction=userinfo&user=$1&cstart=$2 last;
rewrite ^/user/([^/]*)/news(/?)+$ /index.php?subaction=allnews&user=$1 last;
rewrite ^/user/([^/]*)/news/page/([0-9]+)(/?)+$ /index.php?subaction=allnews&user=$1&cstart=$2 last;
rewrite ^/user/([^/]*)/news/rss.xml(/?)+$ /engine/rss.php?subaction=allnews&user=$1 last;
include /etc/nginx/conf.d/common-loc.inc;
}

location /catalog/ {
rewrite ^/catalog/([^/]*)/rss.xml$ /engine/rss.php?catalog=$1 last;
rewrite ^/catalog/([^/]*)(/?)+$ /index.php?catalog=$1 last;
rewrite ^/catalog/([^/]*)/page/([0-9]+)(/?)+$ /index.php?catalog=$1&cstart=$2 last;
include /etc/nginx/conf.d/common-loc.inc;
}

location /newposts {
rewrite ^/newposts(/?)+$ /index.php?subaction=newposts last;
rewrite ^/newposts/page/([0-9]+)(/?)+$ /index.php?subaction=newposts&cstart=$1 last;
include /etc/nginx/conf.d/common-loc.inc;
}

location /favorites {
rewrite ^/favorites(/?)+$ /index.php?do=favorites last;
rewrite ^/favorites/page/([0-9]+)(/?)+$ /index.php?do=favorites&cstart=$1 last;
include /etc/nginx/conf.d/common-loc.inc;
}

location ~ \.(html|xml) {
rewrite "^/([^.]+)/page,([0-9]+),([0-9]+),([0-9]+)-(.*).html(/?)+$" /index.php?newsid=$4&news_page=$2&cstart=$3 last;
rewrite "^/([^.]+)/page,([0-9]+),([0-9]+)-(.*).html(/?)+$" /index.php?newsid=$3&news_page=$2 last;
rewrite "^/([^.]+)/([0-9]+)-(.*).html(/?)+$" /index.php?newsid=$2 last;
rewrite "^/page,([0-9]+),([0-9]+),([0-9]+)-(.*).html(/?)+$" /index.php?newsid=$3&news_page=$1&cstart=$2 last;
rewrite "^/page,([0-9]+),([0-9]+)-(.*).html(/?)+$" /index.php?newsid=$2&news_page=$1 last;
rewrite "^/print:page,([0-9]+),([0-9]+)-(.*).html(/?)+$" /engine/print.php?news_page=$1&newsid=$2 last;
rewrite "^/([0-9]+)-(.*).html(/?)+$" /index.php?newsid=$1 last;
rewrite "^/static/(.*).html(/?)+$" /index.php?do=static&page=$1 last;
rewrite ^/rules.html$ /index.php?do=rules last;
rewrite ^/statistics.html$ /index.php?do=stats last;
rewrite ^/addnews.html$ /index.php?do=addnews last;
rewrite ^/([^.]+)/rss.xml$ /engine/rss.php?do=cat&category=$1 last;
rewrite ^/page,([0-9]+),([^/]+).html$ /index.php?do=static&page=$2&news_page=$1 last;
rewrite ^/print:([^/]+).html$ /engine/print.php?do=static&page=$1 last;
rewrite ^/rss.xml$ /engine/rss.php last;
rewrite ^/([^/]+).html$ /index.php?do=static&page=$1 last;
include /etc/nginx/conf.d/common-loc.inc;
}

location /mp4 {
internal;
mp4;
}

location ~ \.mp4$ {
mp4;
limit_rate 500K;
}

location ~* \.(jpg|jpeg|gif|png|ico|swf|css|js)$ {
expires 30d;
add_header Cache-Control public;
}

}

При этом

$content = file_get_contents($url); //выдаёт нужный контент страницы
print_r(get_headers($url, 1)); //выдаёт правильную переадресацию

($url - страничка зеркала)

А вот

$home = $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];

уже какой-то не такой путь получается: в $_SERVER['HTTP_HOST'] мелькают левые зеркала к данному сайту не подвязанные, но при этом выбиваются внутренние $_SERVER['REQUEST_URI'] этого сайта...

123 4
Всего: 39