Nginx 搭建 Google 镜像站(docker nginx php-fpm)

2023-08-09 17:23:54

 本文首发于:Nginx 搭建 Google 镜像站

前言

在公司科学上网使用谷歌经常出现很长一段时间访问不了,严重影响工作效率,没办法只能自己搭建一个镜像网站。

正文

环境

机房:搬瓦工系统:Ubuntu 18.04

安装 nginx

$ sudo apt install nginx

增加 nginx 配置

在 /etc/nginx/sites-enabled 文件夹内新增 google.conf 配置文件,配置文件内容为:

server { server_name www.example.com; location / { proxy_pass https://www.google.com/; proxy_redirect https://www.google.com/ /; proxy_cookie_domain google.com www.example.com; proxy_set_header User-Agent $http_user_agent; proxy_set_header Cookie "PREF=ID=047808f19f6de346:U=0f62f33dd8549d11:FF=2:LD=zh-CN:NW=1:TM=1325338577:LM=1332142444:GM=1:SG=2:S=rE0SyJh2W1IQ-Maw"; # 这里设置cookie,这里是别人给出的一段,必要时请放上适合你自己的cookie # 设置这个可以避免一些情况下的302跳转,如果google服务器返回302 redirect,那么浏览器被跳转到google自己的域名,那就没的玩了 proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; subs_filter http://www.google.com http://www.example.com; subs_filter https://www.google.com http://www.example.com; # 这里替换网页中的链接,因为我们的镜像站是http的,所以上面顺便把协议也一起替换了 } }

注:请手动更改配置中的 www.example.com 为自己的域名地址

载入配置

使用下列命令重新载入配置

$ nginx -s reload

添加 DNS 解析记录

将自己的域名添加一条指向该台服务器 IP 的 DNS 解析记录,访问域名即可实现访问谷歌。

增加 Basic Auth 认证

如果不想自己的谷歌镜像被别人乱用,可以增加 Basic Auth 来限制其他人使用。

生成密码

使用下列命令生成密码:

$ printf "your_username:$(openssl passwd -crypt your_password)\n" >> /etc/nginx/conf.d/passwd

配置 Nginx

用 vim 修改刚刚的配置文件

$ vim /etc/nginx/sites-enabled/google.conf

增加下列内容

... location / { auth_basic "Hello World"; auth_basic_user_file conf.d/passwd; proxy_pass https://www.google.com/; ...

然后 nginx -s reload 重启 Nginx 生效。

参考

Nginx 搭建 Google 镜像站为 Nginx 添加 HTTP 基本认证(HTTP Basic Authentication)


以上就是关于《Nginx 搭建 Google 镜像站(docker nginx php-fpm)》的全部内容,本文网址:https://www.7ca.cn/baike/62267.shtml,如对您有帮助可以分享给好友,谢谢。
标签:
声明

排行榜