Skip to content
WONGCW 網誌
  • 首頁
  • 論壇
  • 微博
  • 壁紙下載
  • 免費圖床
  • 視頻下載
  • 聊天室
  • SEO工具
  • 支援中心
  • 表格製作
  • More
    • 在線名片
    • 網頁搜索
    • 天氣預報
    • 二維碼生成器
  • Search Icon

WONGCW 網誌

記錄生活經驗與點滴

基于 Ubuntu 快速搭建 OpenResty

基于 Ubuntu 快速搭建 OpenResty

2018-09-29 Comments 0 Comment

了解 OpenResty®

任务时间:1min ~ 3min

本教程适用于 64 位版本的 Ubuntu 16.04 LTS

什么是 OpenResty®

OpenResty® 是一个基于 Nginx 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的动态 Web 应用、Web 服务和动态网关。

OpenResty® 通过汇聚各种设计精良的 Nginx 模块(主要由 OpenResty 团队自主开发),从而将 Nginx 有效地变成一个强大的通用 Web 应用平台。这样,Web 开发人员和系统工程师可以使用 Lua 脚本语言调动 Nginx 支持的各种 C 以及 Lua 模块,快速构造出足以胜任 10K 乃至 1000K 以上单机并发连接的高性能 Web 应用系统。

OpenResty® 的目标是让你的Web服务直接跑在 Nginx 服务内部,充分利用 Nginx 的非阻塞 I/O 模型,不仅仅对 HTTP 客户端请求,甚至于对远程后端诸如 MySQL、PostgreSQL、Memcached 以及 Redis 等都进行一致的高性能响应。

更新系统

任务时间:1min ~ 3min

在安装前,我们先对 CVM 的系统进行更新,确保系统内的软件源和工具是最新版本。

执行命令从软件源进行更新

sudo apt-get update
sudo apt-get upgrade -y

安装 OpenResty®

任务时间:3min ~ 10min

添加官方签名密钥

wget -qO - https://openresty.org/package/pubkey.gpg | sudo apt-key add -

添加官方仓库

sudo apt-get -y install software-properties-common
sudo add-apt-repository -y "deb http://openresty.org/package/ubuntu $(lsb_release -sc) main"
sudo apt-get update

安装二进制包

sudo apt-get install -y openresty

以默认配置文件启动

在安装了官方的二进制包之后,这个包自动帮我们生成了一份配置文件,可以让我们直接启动服务,并确认服务是否启动成功。

执行如下命令启动 openresty 服务

sudo systemctl start openresty

确认服务启动成功

接下来就可以直接通过 IP 访问服务器上已经启动的 openresty 服务了。

打开这个链接:http://<您的 CVM IP 地址>/

如果看到 Welcome to OpenResty! 的欢迎页面,则说明服务启动成功!

欢迎页面

设置开机自动启动

默认情况下,openresty 可能不会开机启动。我们需要告诉系统开机自动启动 openresty 服务。

执行如下命令设置开机自动启动

sudo systemctl enable openresty

配置 OpenResty®

任务时间:1min ~ 3min

查看现有的配置文件

在安装、启动完成之后,我们就可以尝试对 openresty 的配置文件进行个性化修改了。

默认安装完成后,配置文件存放在 [/etc/openresty],我们可以使用 vim nano 文本编辑器打开配置文件并进行编辑,或直接在实验室的 Web 页面进行编辑。

请选择你熟悉的编辑器

sudo nano /etc/openresty/nginx.conf
sudo vim /etc/openresty/nginx.conf

查看 nginx.conf

这个文件夹是一个软连接,指向 /usr/local/openresty/nginx/conf/ ,方便快速访问、修改配置文件。

编辑配置文件修改监听端口

现在我们来尝试修改一下默认配置文件。首先我们来对 Nginx 的监听端口做一个修改。我们将默认的 80 端口监听修改到 8080 端口。

由于默认配置文件不可以用 ubuntu 用户修改,我们先修改配置文件的权限:

sudo chmod 666 /etc/openresty/nginx.conf

在生产环境建议不要修改文件权限,以防非授权用户随意修改配置文件。

编辑 nginx.conf

示例代码:/etc/openresty/nginx.conf

#user  nobody;
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;

    server {
        listen       8080;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            root   html;
            index  index.html index.htm;
        }

        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

        # proxy the PHP scripts to Apache listening on 127.0.0.1:80
        #
        #location ~ \.php$ {
        #    proxy_pass   http://127.0.0.1;
        #}

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        #location ~ \.php$ {
        #    root           html;
        #    fastcgi_pass   127.0.0.1:9000;
        #    fastcgi_index  index.php;
        #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
        #    include        fastcgi_params;
        #}

        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        #location ~ /\.ht {
        #    deny  all;
        #}
    }


    # another virtual host using mix of IP-, name-, and port-based configuration
    #
    #server {
    #    listen       8000;
    #    listen       somename:8080;
    #    server_name  somename  alias  another.alias;

    #    location / {
    #        root   html;
    #        index  index.html index.htm;
    #    }
    #}


    # HTTPS server
    #
    #server {
    #    listen       443 ssl;
    #    server_name  localhost;

    #    ssl_certificate      cert.pem;
    #    ssl_certificate_key  cert.key;

    #    ssl_session_cache    shared:SSL:1m;
    #    ssl_session_timeout  5m;

    #    ssl_ciphers  HIGH:!aNULL:!MD5;
    #    ssl_prefer_server_ciphers  on;

    #    location / {
    #        root   html;
    #        index  index.html index.htm;
    #    }
    #}

}

检查配置文件有效性

在修改了配置文件之后,我们不要着急重新启动 openresty 服务,而是应该先对配置文件进行校验,确保配置文件不存在语法错误。

以下两个命令都可以对配置文件进行检查:

sudo /usr/local/openresty/nginx/sbin/nginx -t

显示如下内容为检查通过:

nginx: the configuration file /usr/local/openresty/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/openresty/nginx/conf/nginx.conf test is successful

如果配置文件存在语法问题,如缺少结尾分号,则会有错误信息进行提示:

nginx: [emerg] directive "worker_processes" is not terminated by ";" in /usr/local/openresty/nginx/conf/nginx.conf:12
nginx: configuration file /usr/local/openresty/nginx/conf/nginx.conf test failed

重新加载配置文件

确认配置文件不存在语法问题等错误后,就可以重新加载配置文件了。可以使用以下两个命令实现:

sudo systemctl reload openresty
sudo /usr/local/openresty/nginx/sbin/nginx -s reload

重新加载成功时,命令不会有任何输出。

如果加载失败,则会有对应的错误信息显示。

访问修改后的服务

接下来就可以直接通过修改后的端口来访问 openresty 服务了。

打开这个链接:http://<您的 CVM IP 地址>:8080/

完成实验

恭喜!您已经成功完成了使用包管理工具安装 OpenResty 的实验任务

分享此文:

  • 按一下即可分享至 X(在新視窗中開啟) X
  • 按一下以分享至 Facebook(在新視窗中開啟) Facebook
  • 分享到 WhatsApp(在新視窗中開啟) WhatsApp
  • 按一下以分享到 Telegram(在新視窗中開啟) Telegram
  • 分享到 Pinterest(在新視窗中開啟) Pinterest
  • 分享到 Reddit(在新視窗中開啟) Reddit
  • 按一下即可以電子郵件傳送連結給朋友(在新視窗中開啟) 電子郵件
  • 點這裡列印(在新視窗中開啟) 列印

相關


Linux資訊, 教學資源

Post navigation

PREVIOUS
基于 CentOS 快速搭建 OpenResty
NEXT
基于 CentOS 搭建 VNC 远程桌面服务

發表迴響取消回覆

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料。

More results...

Generic filters
Exact matches only
Search in title
Search in content
Search in excerpt
Filter by 分類
網站公告
Featured
限時免費
Windows 軟件下載
系統軟件
辦公軟件
圖像處理
影音媒體
網絡軟件
應用軟件
Mac 軟件下載
安卓軟件下載
網絡資訊
Mac資訊
Linux資訊
VPS資訊
NASA資訊
WordPress資訊
WeChat資訊
PHP資訊
教學資源
開源程序
網頁工具
SEO工具
醫療健康
其他資訊
Content from
Content to
2018 年 9 月
一 二 三 四 五 六 日
 12
3456789
10111213141516
17181920212223
24252627282930
« 8 月   10 月 »

分類

  • 網站公告
  • 限時免費
  • Windows 軟件下載
  • 系統軟件
  • 辦公軟件
  • 圖像處理
  • 影音媒體
  • 網絡軟件
  • 應用軟件
  • Mac 軟件下載
  • 安卓軟件下載
  • 網絡資訊
  • Mac資訊
  • Linux資訊
  • VPS資訊
  • NASA資訊
  • WordPress資訊
  • WeChat資訊
  • PHP資訊
  • 教學資源
  • 開源程序
  • 網頁工具
  • SEO工具
  • 醫療健康
  • 其他資訊

彙整

近期文章

  • 消息稱Manus母公司擬融資1億美元資金用於發展中國業務 2025-05-14
  • Unity威脅撤銷《DayZ》開發者工作室的軟體授權 2025-05-14
  • 特斯拉煥新Model Y遇冷:上市即促銷沒有”新”賣點 2025-05-14
  • 從太空俯瞰的生態警報:高山植物基因庫正加速流失 2025-05-14
  • 宇宙壽命大縮水科學家將毀滅倒數提前萬億倍 2025-05-14
  • 疫苗難產、藥物稀缺人類與真菌的戰鬥正陷入困境 2025-05-14
  • AI顛覆製藥業:數月設計抗體藥物挑戰傳統研發 2025-05-14
  • 大疆確認Mavic 4 Pro將不會在美國上市 2025-05-14
  • 京東CEO:騎手工服嚴重缺貨正在趕工 2025-05-14
  • 白宮大幅削減小額包裹關稅稅率美國業界卻有另一番見解 2025-05-14

熱門文章與頁面︰

  • 您可以在Windows 11 24H2 中找回WordPad
  • 傳三星2nm良品率逐漸提高英偉達及高通都有下單意向
  • 宇宙壽命大縮水科學家將毀滅倒數提前萬億倍
  • 新研究發現輔助駕駛技術更容易導致駕駛分心
  • 傳NVIDIA全球總部將設在台灣黃仁勳將於下周宣布選址
  • 富士闢謠拍立得相紙停產:仍在生產停產說法並不屬實
  • 滴滴寵物出遊:已有近200萬隻寵物完成檔案註冊正嘗試接入順風車運力
  • 航太六院140噸級重複使用液態氧甲烷引擎首次整機試驗成功
  • 國務院關稅稅則委員會公佈公告調整對原產於美國的進口商品加徵關稅措施
  • 商務座駕玩起未來風新寶馬5系列曝光

投遞稿件

歡迎各界人士投遞稿件到admin@wongcw.com

請提供以下資料:

1.你的名字

2.你的電郵

3.分類目錄

4.文章標題

5.文章摘要

6.文章內容

7.文章來源

 

聯繫我們

查詢,投稿,商務合作:
​admin@wongcw.com
​技術支援:
​support@wongcw.com
​客户服務:
​cs@wongcw.com

QQ群:833641851

快帆

MALUS

極度掃描

DMCA.com Protection Status

WONGCW 網誌

  • 免責聲明
  • 捐助我們
  • ThemeNcode PDF Viewer
  • ThemeNcode PDF Viewer SC
  • Events

服務器提供

本站使用之服務器由ikoula提供。

聯繫我們

查詢,投稿,商務合作:
​admin@wongcw.com
​技術支援:
​support@wongcw.com
​客户服務:
​cs@wongcw.com

QQ群:833641851

© 2025   All Rights Reserved.