V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Lentin
V2EX  ›  分享发现

Openshift 搭建某搜索引擎反代的一些步骤

  •  
  •   Lentin · 2016-09-25 11:25:54 +08:00 · 2507 次点击
    这是一个创建于 3009 天前的主题,其中的信息可能已经有所发展或是发生改变。

    只是一些大概步骤,仅供参考

    wget http://nginx.org/download/nginx-1.11.4.tar.gz
    wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.39.tar.gz
    wget https://www.openssl.org/source/openssl-1.1.0a.tar.gz
    wget http://zlib.net/zlib-1.2.8.tar.gz
    git clone https://github.com/cuber/ngx_http_google_filter_module
    git clone https://github.com/yaoweibin/ngx_http_substitutions_filter_module
    
    tar xzvf nginx-*.tar.gz
    tar xzvf pcre-*.tar.gz
    tar xzvf openssl-*.tar.gz
    tar xzvf zlib-*.tar.gz
    
    cd nginx-*
    
    ./configure \
      --prefix=$OPENSHIFT_DATA_DIR \
      --with-pcre=../pcre-* \
      --with-openssl=../openssl-* \
      --with-zlib=../zlib-* \
      --with-http_ssl_module \
      --add-module=../ngx_http_google_filter_module \
      --add-module=../ngx_http_substitutions_filter_module
      
    make install
    
    #参考这篇文章修改 nginx 的配置
    https://blog.openshift.com/lightweight-http-serving-using-nginx-on-openshift/
    
    #修改 nginx 配置文件
    vi $OPENSHIFT_DATA_DIR/conf/nginx.conf
    
    http {
        …
    	upstream www.google.com {
    		server 173.194.38.209:443;
    		server 173.194.38.211:443;
    		server 173.194.38.212:443;
    		server 173.194.38.210:443;
    		server 173.194.38.208:443;
    	}
        server {
            listen       $OPENSHIFT_IP:$OPENSHIFT_PORT;
            server_name  localhost;
    		google on;
    		subs_filter http://example.com https://example.com;#openshift 不会将链接转换成 https ,这里需要手动替换一下
            … 
            }
        …
        }
    
    mv $OPENSHIFT_DATA_DIR/conf/nginx.conf $OPENSHIFT_DATA_DIR/conf/nginx.conf.template
    
    #官方文档的变量名没有更新,需要参考下面的设置
    start.file
    
    sed -e "s/`echo '$OPENSHIFT_IP:$OPENSHIFT_PORT'`/`echo $OPENSHIFT_DIY_IP:$OPENSHIFT_DIY_PORT`/" $OPENSHIFT_DATA_DIR/conf/nginx.conf.template > $OPENSHIFT_DATA_DIR/conf/nginx.conf
    nohup $OPENSHIFT_DATA_DIR/sbin/nginx > $OPENSHIFT_DIY_LOG_DIR/server.log 2>&1 &
    

    部分内容参考自 https://github.com/cuber/ngx_http_google_filter_module/blob/master/README.zh-CN.md

    第 1 条附言  ·  2016-09-26 00:42:24 +08:00
    修改了一下,完善了一些步骤,仅供参考^_^
    17 条回复    2016-09-29 20:20:08 +08:00
    tcp
        1
    tcp  
       2016-09-25 12:04:49 +08:00 via iPhone
    Lentin
        2
    Lentin  
    OP
       2016-09-25 12:14:15 +08:00
    @tcp oh ……悲伤的故事……
    su8610
        3
    su8610  
       2016-09-25 12:30:17 +08:00 via Android
    openshift 墙内访问不行啊,超慢
    Lentin
        4
    Lentin  
    OP
       2016-09-25 12:34:18 +08:00
    @su8610 加一层 CF 的 CDN 会好很多
    ixinshang
        5
    ixinshang  
       2016-09-25 13:03:06 +08:00 via Android
    不错 很早之前看过! 没动手弄过
    ldbC5uTBj11yaeh5
        6
    ldbC5uTBj11yaeh5  
       2016-09-25 13:04:04 +08:00
    好顶赞。有 heroku 的克隆么?
    Lentin
        7
    Lentin  
    OP
       2016-09-25 13:18:05 +08:00
    @tcp 我找到了可以用 DNS 解析的方式,具体的是 nginx 设置 resolver 的 dns ip 为 /etc/resolv.conf 里面的 IP
    Lentin
        8
    Lentin  
    OP
       2016-09-25 13:19:13 +08:00
    @jigloo heroku 不支持自行编译 nginx ,如果有功夫的话可以试试用 openshift 的 DIY 手动搭建顺便练习下 nginx 的编译安装过程
    Testalias
        9
    Testalias  
       2016-09-25 13:36:01 +08:00
    我的第一个梯子就是在 OpenShift 上搭的,主域名都被墙了。
    Lentin
        10
    Lentin  
    OP
       2016-09-25 13:53:10 +08:00 via Android
    @Testalias 访问量不少了吧,我用的免费域名弄得
    Haiwx
        11
    Haiwx  
       2016-09-26 13:12:21 +08:00 via Android
    等下试一试,谢谢。
    Haiwx
        12
    Haiwx  
       2016-09-26 20:10:29 +08:00
    vi $OPENSHIFT_DATA_DIR/conf/nginx.conf 无法保存修改后的东西怎么办? E212
    Lentin
        13
    Lentin  
    OP
       2016-09-26 20:51:47 +08:00   ❤️ 1
    Lentin
        14
    Lentin  
    OP
       2016-09-26 20:53:38 +08:00
    Haiwx
        15
    Haiwx  
       2016-09-26 22:26:41 +08:00
    @Lentin 好的,谢谢~
    su8610
        16
    su8610  
       2016-09-27 19:10:26 +08:00 via Android
    我自己也搞了一个,但是访问比较慢,有什么优化的方法么?
    Lentin
        17
    Lentin  
    OP
       2016-09-29 20:20:08 +08:00 via Android
    @su8610 弄上 cloudflare 的 CDN 试试
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2865 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 06:33 · PVG 14:33 · LAX 22:33 · JFK 01:33
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.