序文
Googleアカデミックリバースプロキシである必要があるため、nginxには対応するモジュールがありますが、バージョンはnginxの最新バージョンをサポートしていないため、nginx 1.78の古いバージョンとシステムバージョンcentos7を選択しました。
Nginxをインストールする
依存関係をインストールする
yum install gcc gcc -c ++ automake pcre pcre-devel zlip zlib-devel openssl openssl-devel git make
nginxをダウンロード
wget " http://nginx.org/download/nginx-1.7.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- 1.7。8。tar .gz cd nginx - 1.7。8
コンパイルしてインストール
./ configure \ --prefix = / etc / nginx \ --with- http_ssl_module \
--with-http_stub_status_module \ --add-module = / root / ngx_http_google_filter_module \ --add-module = / root / ngx_http_substitutions_filter_module
vim / etc / profile //ファイルの エクスポートを編集PATH = $ PATH:/ usr / sbin / nginx / sbin //この行の ソースを追加します〜/ .bashrc //有効にします
nginx管理
nginxの//開始 nginxの - S STOP //ストップ nginxの -sリロード//リスタート
nginx構成ファイルを変更する
サーバー{ 443 sslを リッスンします。 server_name域名; ssl_certificate / etc / nginx / ssl / xx.pro_chain.crt; ssl_certificate_key / etc / nginx / ssl / xx.pro_key.key; ssl_session_timeout 5m; ssl_ciphers ECDHE -RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH :! RC4; ssl_protocols TLSv1 TLSv1。1 TLSv1.2 ; ssl_prefer_server_ciphers on; リゾルバー 8.8.8.8 ; 場所 / { subs_filter_types * ; グーグルオン; google_scholarオン; } }
このモジュールは、アカデミックと検索を組み合わせ、2つのドメイン名を介してURL書き換えを実装し、アカデミックを独立したドメイン名にバインドします
サーバー{ 443 sslを リッスンします。 server_name xx.pro; #域名 ssl_certificate / etc / nginx / ssl / xx.pro_chain.crt; ssl_certificate_key / etc / nginx / ssl / xx.pro_key.key; 場所 / { if($ request_uri〜 * " / scholar \?" ){ proxy_pass https://www.xx.pro/scholar?$ args ; 休憩; } proxy_pass https://www.xx.pro/scholar/ ; } error_page 500 502 503 504 / 50x.html; location = / 50x.html { ルートhtml; } } }