nginxの環境を構築します
ソースパッケージ解凍nginxのをダウンロード
既存のアーカイブを通じ
ここではまた、yumを介してオンラインダウンロードすることができます
wget http://nginx.org/download/nginx-1.13.7.tar.gz
tar -zxf nginx-1.14.2.tar.gz -C [目标路径]
nginxのをインストールします。
ソースファイルは、袋の後に解凍されています
cd nginx-1.14.2/
コマンドを実行する前に、一つのことを行い、依存関係を解決し、それ以外のnginxをインストールしていません
キーのインストールの依存関係
yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel
インストールnginxのを開始します
実行 ./configure
以下は、成功を表し、
コンパイル make
インストール make install
プロファイルを設定します
vim conf/nginx.conf
コマンドを起動します
nginxの起動コマンドの/usr/local/nginx/sbin/
ディレクトリ
あなたはにコピーすることができ/usr/bin/
、高速スタート
./nginx
スタート
スタートアップコンフィギュレーションファイルを指定します。
nginx -c /usr/local/nginx/conf/nginx.conf
./nginx -s stop
近いです
./nginx -s reload
再起動
iptablesがアクセス不能ポート80を開く必要があり、
iptables -I INPUT -p tcp --dport 80 -j ACCEPT
ポート転送を設定するのは簡単
プロフィールを入力してください
vim conf/nginx.conf
ポートを転送する新しいアプリケーション・サーバーを作成します。
server {
# 监听8090端口
listen 8090;
location / {
# 访问8090端口转发到80端口的应用服务器上
proxy_pass http://127.0.0.1:80;
}
}
再起動nginxの nginx -s reload
ポート転送を設定するには、ロード・バランシング・プールを構成することにより
プロフィールを入力してください
vim conf/nginx.conf
# 配置负载均衡池
upstream demo_pool{
server 127.0.0.1:80;
}
server {
listen 1234; #拦截端口
server_name demo.com; #域名配置
# access_log logs/bolg.log;
# error_log logs/bolg.error;
#将所有请求转发给dome_pool池的应用处理
location / {
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://demo_pool; #如果是ssl更改成https
}
}
アクセス http://192.168.80.11:1234
SERVER_NAMEマッチ
server {
listen 80;
server_name www;
location / {
default_type text/html;
content_by_lua '
ngx.say("<p>www</p>")
';
}
}
server {
listen 80;
server_name www.r0cky.com;
location / {
default_type text/html;
content_by_lua '
ngx.say("<p>www.r0cky.com</p>")
';
}
}
server {
listen 80;
server_name www.r0cky.*;
location / {
default_type text/html;
content_by_lua '
ngx.say("<p>www.r0cky.*</p>")
';
}
}
server {
listen 80;
server_name ~\w+.com;
location / {
default_type text/html;
content_by_lua '
ngx.say("<p>~\w+.com</p>")
';
}
}
server {
listen 80;
server_name ~.*r0cky.com;
location / {
default_type text/html;
content_by_lua '
ngx.say("<p>~.*r0cky.com</p>")
';
}
}
異なるドメイン名は、対応するアプリケーションサーバに転送するために、特定のサーバにブロックをマッチング、リクエストヘッダHOSTフィールドを通過します。
ホスト
192.168.80.11 www.r0cky.com
192.168.80.11 www.r0cky.org
192.168.80.11 blog.r0cky.com
192.168.80.11 r0cky.com
アクセスwww.r0cky.com
アクセスwww.r0cky.org
アクセスblog.r0cky.com
マッチング順
次のようにホストの優先順位を持つサーバー名のマッチは次のとおりです。
- 完全に一致
- など、ワイルドカードの前に.test.com
- このようwww.test後。*
- 〜^ .www.test.com $として定期的なマッチング、
彼らは一致しない場合
- 好適な設定項目は、デフォルト値を持っているか、DEFAULT_SERVERを聞いた後、
- サーバーを見つけるための最初のブロックマッチングは、ポートを聞きます