upstream www-pixiv-net {
    #server 104.18.12.135:443;
    #server 104.18.13.135:443;
    server 210.140.131.223:443;
    server 210.140.131.225:443;
    server 210.140.131.220:443;
}

upstream account-pixiv-net {
    server 210.140.131.226:443;
    server 210.140.131.218:443;
    server 210.140.131.222:443;
}

upstream sketch-pixiv-net {
    server 210.140.174.37:443;
    server 210.140.170.179:443;
    server 210.140.175.130:443;
}

upstream sketch-hls-server {
    server 210.140.214.211:443;
    server 210.140.214.212:443;
    server 210.140.214.213:443;
}

upstream imgaz-pixiv-net {
    server 210.140.131.145:443;
    server 210.140.131.144:443;
    server 210.140.131.147:443;
    server 210.140.131.153:443;
}

upstream i-pximg-net {
    server 210.140.92.140:443;
    server 210.140.92.137:443;
    server 210.140.92.139:443;
    server 210.140.92.142:443;
    server 210.140.92.134:443;
    server 210.140.92.141:443;
    server 210.140.92.143:443;
    server 210.140.92.136:443;
    server 210.140.92.138:443;
    server 210.140.92.144:443;
    server 210.140.92.145:443;
}

upstream app-api-pixiv-net {
    server 210.140.131.218:443;
    server 210.140.131.223:443;
    server 210.140.131.226:443;
}

server {
    listen 80 default_server;
    rewrite ^(.*) https://$host$1 permanent;
}

server {
    listen 443 ssl;
    server_name www.pixiv.net;


    ssl_certificate ca/pixiv.net.crt;
    ssl_certificate_key ca/pixiv.net.key;

    client_max_body_size 50M;

    location / {
        #proxy_ssl_server_name on;
        proxy_pass https://www-pixiv-net;
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Real_IP $remote_addr;
        proxy_set_header User-Agent $http_user_agent;
        proxy_set_header Accept-Encoding '';
        proxy_buffering off;
    }
}

server {
    listen 443 ssl;
    server_name pixiv.net;
    server_name ssl.pixiv.net;
    server_name accounts.pixiv.net;
    server_name touch.pixiv.net;
    server_name oauth.secure.pixiv.net;


    ssl_certificate ca/pixiv.net.crt;
    ssl_certificate_key ca/pixiv.net.key;

    client_max_body_size 50M;

    location / {
        proxy_pass https://account-pixiv-net;
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Real_IP $remote_addr;
        proxy_set_header User-Agent $http_user_agent;
        proxy_set_header Accept-Encoding '';
        proxy_buffering off;
    }
}

server {
    listen 443 ssl;
    server_name i.pximg.net;


    ssl_certificate ca/pixiv.net.crt;
    ssl_certificate_key ca/pixiv.net.key;

    location / {
        rewrite ^/(.*)$ https://i.pixiv.cat/$1 redirect;

        # proxy_pass https://i-pximg-net;
        # proxy_set_header Host $http_host;
        # proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        # proxy_set_header X-Real_IP $remote_addr;
        # proxy_set_header User-Agent $http_user_agent;
        # proxy_set_header Accept-Encoding '';
        # proxy_buffering off;
    }
}

server {
    listen 443 ssl;
    server_name sketch.pixiv.net;


    ssl_certificate ca/pixiv.net.crt;
    ssl_certificate_key ca/pixiv.net.key;

    location / {
        proxy_pass https://sketch-pixiv-net;
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Real_IP $remote_addr;
        proxy_set_header User-Agent $http_user_agent;
        proxy_set_header Accept-Encoding '';
        proxy_buffering off;
    }

    # Proxying WebSockets
    location /ws/ {
        proxy_pass https://sketch-pixiv-net;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Host $host;
    }
}

server {
    listen 443 ssl;
    server_name *.pixivsketch.net;


    ssl_certificate ca/pixiv.net.crt;
    ssl_certificate_key ca/pixiv.net.key;

    location / {
        proxy_pass https://sketch-hls-server;
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Real_IP $remote_addr;
        proxy_set_header User-Agent $http_user_agent;
        proxy_set_header Accept-Encoding '';
        proxy_buffering off;
    }
}

server {
    listen 443 ssl;
    server_name factory.pixiv.net;


    ssl_certificate ca/pixiv.net.crt;
    ssl_certificate_key ca/pixiv.net.key;

    location / {
        proxy_pass https://210.140.131.180/;
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Real_IP $remote_addr;
        proxy_set_header User-Agent $http_user_agent;
        proxy_set_header Accept-Encoding '';
        proxy_buffering off;
    }
}

server {
    listen 443 ssl;
    server_name dic.pixiv.net;
    server_name en-dic.pixiv.net;
    server_name sensei.pixiv.net;
    server_name fanbox.pixiv.net;
    server_name payment.pixiv.net.pixiv.net;


    ssl_certificate ca/pixiv.net.crt;
    ssl_certificate_key ca/pixiv.net.key;

    location / {
        proxy_pass https://210.140.131.222/;
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Real_IP $remote_addr;
        proxy_set_header User-Agent $http_user_agent;
        proxy_set_header Accept-Encoding '';
        proxy_buffering off;
    }
}

server {
    listen 443 ssl;
    server_name imgaz.pixiv.net;
    server_name comic.pixiv.net;
    server_name novel.pixiv.net;
    server_name source.pixiv.net;
    server_name i1.pixiv.net;
    server_name i2.pixiv.net;
    server_name i3.pixiv.net;
    server_name i4.pixiv.net;


    ssl_certificate ca/pixiv.net.crt;
    ssl_certificate_key ca/pixiv.net.key;

    location / {
        proxy_pass https://imgaz-pixiv-net;
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Real_IP $remote_addr;
        proxy_set_header User-Agent $http_user_agent;
        proxy_set_header Accept-Encoding '';
        proxy_buffering off;
    }
}

server {
    listen 443 ssl;
    server_name app-api.pixiv.net;

    ssl_certificate ca/pixiv.net.crt;
    ssl_certificate_key ca/pixiv.net.key;

    location / {
        proxy_pass https://app-api-pixiv-net;
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Real_IP $remote_addr;
        proxy_set_header User-Agent $http_user_agent;
        proxy_set_header Accept-Encoding '';
        proxy_buffering off;
    }
}

server {
    listen 443 ssl;
    server_name www.google.com;


    ssl_certificate ca/pixiv.net.crt;
    ssl_certificate_key ca/pixiv.net.key;

    location ^~ /recaptcha/ {
        rewrite ^(.*)$ https://www.recaptcha.net$1 break;
    }

    location / {
        default_type text/html;
        charset utf-8;
        return 200 'Pixiv-Nginx提醒：本工具默认代理了www.google.com，用于加载P站登陆时的验证码插件，如果你有方法正常访问www.google.com，并且不希望看到这个页面，那么将 <code>C:\Windows\System32\drivers\etc\hosts</code> 中 <code>127.0.0.1 www.google.com</code> 的那行记录删除即可。如果删除后刷新网页还是看到这个页面，请先清除一下浏览器缓存。';
    }
}

upstream wikipedia-text-lb {
    server 208.80.153.224:443;
    #server 208.80.154.224:443;
    server 91.198.174.192:443;
    #server 103.102.166.224:443;
}

server {
    listen 443 ssl;
    server_name *.wikipedia.org;
    server_name *.m.wikipedia.org;


    ssl_certificate ca/pixiv.net.crt;
    ssl_certificate_key ca/pixiv.net.key;

    location / {
        proxy_pass https://wikipedia-text-lb/;
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Real_IP $remote_addr;
        proxy_set_header User-Agent $http_user_agent;
        proxy_set_header Accept-Encoding '';
        proxy_buffering off;
    }
}

server {
    listen 443 ssl;
    server_name wikimedia.org;

    ssl_certificate ca/pixiv.net.crt;
    ssl_certificate_key ca/pixiv.net.key;

    location / {
        proxy_pass https://wikipedia-text-lb/;
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Real_IP $remote_addr;
        proxy_set_header User-Agent $http_user_agent;
        proxy_set_header Accept-Encoding '';
        proxy_buffering off;
    }
}
upstream wikipedia-upload-lb {
    server 208.80.153.240:443;
    server 208.80.154.240:443;
    server 91.198.174.208:443;
    server 103.102.166.240:443;
}

server {
    listen 443 ssl;
    server_name upload.wikimedia.org;

    ssl_certificate ca/pixiv.net.crt;
    ssl_certificate_key ca/pixiv.net.key;

    location / {
        proxy_pass https://wikipedia-upload-lb/;
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Real_IP $remote_addr;
        proxy_set_header User-Agent $http_user_agent;
        proxy_set_header Accept-Encoding '';
        proxy_buffering off;
    }
}
server {
    listen 443 ssl;
    server_name *.steamcommunity.com;
    server_name steamcommunity.com;


    ssl_certificate ca/pixiv.net.crt;
    ssl_certificate_key ca/pixiv.net.key;

    location / {
        proxy_pass https://23.61.176.149/;
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Real_IP $remote_addr;
        proxy_set_header User-Agent $http_user_agent;
        proxy_set_header Accept-Encoding '';
        proxy_buffering off;
    }
}

server {
    listen 443 ssl;
    server_name *.steampowered.com;
    server_name steampowered.com;


    ssl_certificate ca/pixiv.net.crt;
    ssl_certificate_key ca/pixiv.net.key;

    location / {
        proxy_pass https://104.112.84.145/;
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Real_IP $remote_addr;
        proxy_set_header User-Agent $http_user_agent;
        proxy_set_header Accept-Encoding '';
        proxy_buffering off;
    }
}
server {
    listen 443 ssl;
    server_name *.archiveofourown.org;
    server_name archiveofourown.org;


    ssl_certificate ca/pixiv.net.crt;
    ssl_certificate_key ca/pixiv.net.key;

    location / {
        proxy_pass https://104.153.64.122/;
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Real_IP $remote_addr;
        proxy_set_header User-Agent $http_user_agent;
        proxy_set_header Accept-Encoding '';
        proxy_buffering off;
    }
}
server {
    listen 443 ssl;
    server_name nyaa.si;
    server_name www.nyaa.si;
    server_name sukebei.nyaa.si;


    ssl_certificate ca/pixiv.net.crt;
    ssl_certificate_key ca/pixiv.net.key;

    location / {
        proxy_pass https://185.178.208.182/;
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Real_IP $remote_addr;
        proxy_set_header User-Agent $http_user_agent;
        proxy_set_header Accept-Encoding '';
        proxy_buffering off;
    }
}

upstream exhentai-lb {
    server 178.175.128.252:443;
    server 178.175.128.254:443;
    server 178.175.129.252:443;
    server 178.175.129.254:443;
    server 178.175.132.20:443;
    server 178.175.132.22:443;
}

server {
    listen 443 ssl;
    server_name exhentai.org;


    ssl_certificate ca/pixiv.net.crt;
    ssl_certificate_key ca/pixiv.net.key;

    location / {
        proxy_pass https://exhentai-lb/;
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Real_IP $remote_addr;
        proxy_set_header User-Agent $http_user_agent;
        proxy_set_header Accept-Encoding '';
        proxy_buffering off;
    }
}

upstream e-hentai-lb {
    server 104.20.26.25:443;
    server 104.20.27.25:443;
}

server {
    listen 443 ssl;
    server_name e-hentai.org;


    ssl_certificate ca/pixiv.net.crt;
    ssl_certificate_key ca/pixiv.net.key;

    location / {
        proxy_pass https://e-hentai-lb/;
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Real_IP $remote_addr;
        proxy_set_header User-Agent $http_user_agent;
        proxy_set_header Accept-Encoding '';
        proxy_buffering off;
    }
}

server {
    listen 443 ssl;
    server_name forums.e-hentai.org;


    ssl_certificate ca/pixiv.net.crt;
    ssl_certificate_key ca/pixiv.net.key;

    location / {
        proxy_pass https://94.100.18.243:443/;
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Real_IP $remote_addr;
        proxy_set_header User-Agent $http_user_agent;
        proxy_set_header Accept-Encoding '';
        proxy_buffering off;
    }
}
