Linux下安裝配置OpenResty服務器


    OpenResty是一款基於Nginx和Lua的高性能Web平台,在nginx基礎之上集成了大量的lua庫,第三方模塊等,以便搭建各種處理高並發、可擴展的Web應用、服務或網關,並且OpenResty完全兼容nginx所有的配置,可以直接當做nginx來使用,而且可以支持lua進行編程處理相應的邏輯,實現高並發的請求處理,可以彌補nginx不可編程的困難,所以是結合了nginx的異步模型加上Lua編程簡單的兩大優點,實現高性能可擴展的網關,下面就主要敘述下openresty的基本安裝和配置

    openresty官網:http://openresty.org/

    下載頁面:http://openresty.org/cn/download.html,官方提供針對不同平台的二進制包,我這使用的是源碼包編譯的方式安裝,用二進制包安裝更簡單

    安裝參考:http://openresty.org/cn/installation.html

    安裝之前首先要確認系統的基礎環境,我使用的是CentOS 7,確認環境如下:

    1. gcc  編譯器,yum安裝命令: yum install gcc 

    2. curl庫,yum安裝命令: yum install curl 

    3. pcre、zlib、openssl開發庫,安裝命令: yum install pcre-devel zlib-devel openssl-devel ,其實openssl會依賴pcre和zlib

    4. 如果啟用postgres模塊,還需要安裝postgresql開發庫: yum install postgresql-devel ,否則會報錯:ngx_postgres addon was unable to detect version of the libpq library

    5. 最后准備OpenResty源碼包:openresty-1.17.8.2.tar.gz

    然后准備安裝openresty,解壓源碼包:

tar -xvzf openresty-1.17.8.2.tar.gz
cd openresty-1.17.8.2

    然后設置配置選項:

./configure --prefix=/opt/openresty --with-luajit --with-http_iconv_module --with-http_postgres_module

    默認的prefix目錄為:/usr/local/openresty,這里指定到/opt/openresty,另外--with-luajit在1.5.8.1之后已經默認開啟,不加也是啟用的,更多的參數選項執行: ./configure --help 查看,接下來編譯並安裝源碼:

make -j4
make install

    然后可以cd到/opt/openresty,會看到有個nginx目錄,沒錯這就是nginx,和原生的用法一樣,我們直接可以執行: nginx/sbin/nginx 來啟動nginx,這個時候可以訪問首頁來測試一下:

    

     然后也可以單獨自己隨便找個目錄創建自己的OpenResty項目,比如到自己的用戶目錄下操作:

mkdir ~/resty-work
cd ~/resty-work
# 創建conf和logs目錄
mkdir conf logs

    然后在conf下創建配置文件:conf/nginx.conf,配置如下內容:

worker_processes  1;
error_log logs/error.log;
events {
    worker_connections 1024;
}
http {
    server {
        listen 8080;
        location / {
            default_type text/html;
            content_by_lua_block {
                ngx.say("<p>hello, OpenResty!</p>")
            }
        }
    }
}

    這個配置和普通nginx一樣,只是在其中嵌入了一行lua block用來輸出內容,然后保存配置,為了之后執行方便可以將nginx二進制文件加入到PATH中:

export PATH=$PATH:/opt/openresty/nginx/sbin

    然后再配置到profile即可,這是就可以使用nginx啟動當前的項目: nginx -p `pwd` -c conf/nginx.conf ,因為這次是單獨啟動項目,因此需要使用-p指定要運行的path,默認是openresty安裝目錄下的nginx目錄,然后-c指定配置文件,默認是:conf/nginx.conf,這時pid文件就為~/resty-work/logs/nginx.pid,如果停止同樣要指定目錄和配置文件(如果不是默認): nginx -p `pwd` -c conf/nginx.conf -s stop ,重新載入配置同樣是-s reload參數,和nginx一樣,這種獨立目錄的形式和默認配置效果相同,只是更有編程的感覺,不同功能運行不同的項目,可以跑多個項目,跑起來之后訪問頁面8080端口可以看到輸出內容:

     這樣OpenResty就基本配置好了

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM