Ubuntu安裝部署配置Nginx服務

2021-03-02 linux開發與運維

Ubuntu安裝部署配置Nginx服務

Nginx簡介:

Nginx (engine x) 是一個高性能的HTTP和反向代理web伺服器,同時也提供了IMAP/POP3/SMTP服務。Nginx是由伊戈爾·賽索耶夫為俄羅斯訪問量第二的Rambler.ru站點(俄文:Рамблер)開發的,第一個公開版本0.1.0發布於2004年10月4日。

其將原始碼以類BSD許可證的形式發布,因它的穩定性、豐富的功能集、示例配置文件和低系統資源的消耗而聞名。2011年6月1日,nginx 1.0.4發布。

Nginx是一款輕量級的Web 伺服器/反向代理伺服器及電子郵件(IMAP/POP3)代理伺服器,在BSD-like 協議下發行。其特點是佔有內存少,並發能力強,事實上nginx的並發能力在同類型的網頁伺服器中表現較好,中國大陸使用nginx網站用戶有:百度、京東、新浪、網易、騰訊、淘寶等。

一、安裝環境

ubuntu版本:20.04,需要root權限

二、安裝

1、安裝

sudo apt-get update  // 更新包

sudo apt-get install nginx  // 下載安裝nginx

2、測試安裝

在命令行中輸入:

sudo nginx -t

窗口顯示:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok

nginx: configuration file /etc/nginx/nginx.conf test is successful

在瀏覽器中輸入ip地址:

3、重啟nginx

sudo service nginx restart

二、卸載

1、刪除nginx,-purge包括配置文件

sudo apt-get --purge remove nginx

2、移除全部不使用的軟體包

sudo apt-get autoremove

3、羅列出與nginx相關的軟體並刪除

dpkg --get-selections|grep nginx

sudo apt-get --purge remove nginx

sudo apt-get --purge remove nginx-common

sudo apt-get --purge remove nginx-core

4、查看nginx正在運行的進程,如果有就kill掉

ps -ef |grep nginx

sudo kill -9 XXX

三、配置Nginx

最新版本nginx配置是由4個文件構成:

1.conf.d:用戶自己定義的conf配置文件

2.sites-available:系統默認設置的配置文件

3.sites-enabled:由sites-available中的配置文件轉換生成

4.nginx.conf:匯總以上三個配置文件的內容,同時配置我們所需要的參數

在部署需要的web服務時,我們可以拷貝sites-enabled中的default文件到conf.d並且修改名字為**.conf,然後進行配置

server {

    #服務啟動時監聽的埠

    listen 80 default_server;

    listen [::]:80 default_server;

    #服務啟動時文件加載的路徑

    root /var/www/html/wordpress;

    #默認加載的第一個文件

    index index.php index.html index.htm index.nginx-debian.html;

    #頁面訪問域名,如果沒有域名也可以填寫_

    server_name www.xiexianbo.xin;

    location / {

        #頁面加載失敗後所跳轉的頁面

        try_files $uri $uri/ =404;

    }

   

     

    #以下配置只服務於php

    # 將PHP腳本傳遞給在127.0.0.1:9000上監聽的FastCGI伺服器

    location ~ \.php$ {

        include snippets/fastcgi-php.conf;

        # With php7.0-cgi alone:

        #fastcgi_pass 127.0.0.1:9000;

        # With php7.0-fpm:

        fastcgi_pass unix:/run/php/php7.0-fpm.sock;

    }

    # 如果Apache的文檔為root,則拒絕訪問.htaccess文件

    location ~ /\.ht {

        deny all;

    }

}

注意事項:

1.apache的埠也是80,所以我們可以選擇關閉apache或者,在這裡更換埠,例如81,82等,但是我們需要吧這個埠開放出來

2.React、Vue等由於是單頁面應用,所以我們在刷新的會遇到資源加載不到的錯誤,這時我們需要把頁面重定向到index.html

try_files $uri /index.html;

3.每次配置完成後,都需要重啟nginx。

相關焦點

  • Ubuntu 16.04+.Net Core+Docker+Nginx安裝部署
    本篇文章會一步步的描述從安裝到配置到部署的全部過程。在文章的結構和內容裡,筆者借鑑了很多其他博文的內容,但感覺其他博文中都只是實現了一部分或者沒有將配置內容寫全。筆者做的是整理一下自己的實際部署過程。目錄1. 準備工作2. 創建一個非root用戶3. 更新伺服器4.
  • 在 Ubuntu 上使用 Nginx 部署 Flask 應用
    我現在日常工作的項目是一個RESTful服務,這個服務需要在主流硬體上運行,且能夠按照需要進行水平拓展。為完成這項工作我決定使用Flask和Nginx。Flask是一個輕量級的Python Web框架,Nginx是一個非常穩定的Web伺服器,它們在廉價硬體平臺上工作良好。在這篇文章中我將指導你完成使用Nginx伺服器託管Flask應用的安裝、配置過程。
  • ubuntu中安裝和配置nginx+php-fpm
    昨天有朋友問,如何安裝和配置nginx,其實非常簡單。
  • nginx安裝部署
    nginx高並發配置:1.擴展cpu和內存 2.nginx文件配置 3.linux內核參數配置高可用減少停工時間,保證其服務的高度可用性。雙機熱備方案,當一臺伺服器正在提供服務的時候,另外一臺伺服器處在備用狀態。可以使用keepalived來實現。
  • Nginx網站服務及LNMP平臺部署
    正因為如此,大量提供社交網絡,新聞資訊、電子商務及虛擬主機等服務的企業紛紛選擇Nginx來提供Web服務。        本節將依次介紹Nginx的安裝及運行控制、配置文件(nginx.conf),以及使用Nginx構建基於域名的虛擬Web主機。
  • Nginx安裝與配置HTTPS
    HTTPS最近在寫項目的時候,在將後臺伺服器部署到騰訊雲後,因為前端是小程序,微信小程序開發對於正常使用必須基於HTTPS請求,因此需要配置HTTPS。本來是使用比較簡單openssl進行配置使用,使用第三方免費的SSL證書,但是由於自己配置的證書不穩定,不能被校驗通過,服務功能不能正常使用。
  • 13.nginx高級配置--反向代理
    另外,我們也了解到了nginx,到目前為止我們還只是把它當作一個普通的 web 伺服器在使用。    現在我們需要在同一臺伺服器上搭建上述所有的服務,那該如何配置訪問呢?如果nginx只是一個普通的web伺服器的話也就不會如此之火了,關鍵是nginx這個「年輕」的「小夥」非常不講武德,這裡不得不提到 nginx 另外一個殺手級應用了--反向代理。
  • 在 Ubuntu 16.04 為 Nginx 伺服器安裝 LEMP 環境(MariaDB,PHP 7 並支持 HTTP 2.0)
    密鑰7、 當 Diffie-Hellman 密鑰生成之後,驗證 Nginx 的配置文件是否正確、能否被 Nginx 網絡服務程序應用。FastCGI 能夠從 Ubuntu 官方倉庫中安裝 php-fpm 二進位包來獲取。9、 在你的伺服器控制臺裡輸入下面的命令來獲取 PHP7.0 和擴展包,這能夠讓 PHP 與 Nginx 網絡服務進程通信。
  • Docker部署Django由淺入深系列(下): 八步部署Django+Uwsgi+Nginx+MySQL+Redis
    在上篇教程中,我們手動構建了兩個容器,一個容器放Django + Uwsgi,另一個容器放Nginx,成功部署了一個簡單的Django項目。
  • 部署ubuntu無人值守安裝系統
    無人值守安裝(Unattended Setup)指軟體安裝時無需任何用戶幹預,直接按默認或通過應答文件設置安裝,這對於無特殊需求的用戶或企業大批量部署安裝作業系統及軟體時非常方便
  • Ubuntu Nginx 配置多站點
    配置就好了,然而很多同學還是沒能配置成功,今天我們仔細來看看在 一臺 Ubuntu 的伺服器中,如何在 nginx 在配置多個站點。安裝 Nginx在 Ubuntu 中,你可以直接通過 apt-get 命令來安裝 Nginx:sudo apt-get install nginx2.創建新的文件路徑在安裝完新的 Nginx 之後,針對多個站點的配置,其實我們可以設置不同的 root 來返回不同的內容:sudo mkdir -p /var/www/domain-one.com
  • 用Docker Compose、Nginx、SSH和Github Actions實現前端自動化部署測試機
    前端代碼,打包出來的是靜態文件,可用nginx做服務。COPY dist/ /usr/share/nginx/html/# 拷貝 nginx 配置文件COPY nginx.conf /etc/nginx/nginx.conf# 設置時區RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/
  • Linux+.NetCore+Nginx搭建集群
    本篇和大家分享的是Linux+NetCore+Nginx搭建負載集群,對於netcore2.0發布後,我一直在看官網的文檔並學習,關注有哪些新增的東西,我
  • Python Web 部署:Nginx+Gunicorn+Supervisor+Flask部署筆記
    採用 pip 方式安裝即可。pip install flask測試我們的 flask 安裝是否成功,並使用 flask 寫一個簡單的 web 服務。使用 gunicorn 部署 python web現在我們使用 flask 自帶的伺服器,完成了 web 服務的啟動。生產環境下,flask 自帶的 伺服器,無法滿足性能要求。我們這裡採用 gunicorn 做 wsgi容器,用來部署 python。
  • Docker-compose 八步部署Django + Uwsgi + Nginx + MySQL + Redis升級篇
    Docker 是一個開源的應用容器引擎,讓開發者可以打包他們的應用以及依賴包到一個可移植的鏡像中,然後發布到任何流行的 Linux機器上。本文將是docker-compose部署Django + Uwsgi + Nginx + MySQL + Redis教程的升級版,將完善前面教程不足的地方,很多配置文件將會有非常大的參考價值,建議先收藏再閱讀。
  • nginx如何快樂的在windows下部署​
    不過大多數java愛好者們習慣用Linux系統部署,所以很多人都用Linux系統來安裝使用nginx,我是一個.net程式設計師,雖然也用java,但是習慣性的不喜歡用Linux系統。所以每次遇到跨平臺的項目或者前後端分離的項目部署的時候,我還是會選擇windows的系統,就連伺服器我也是用的百度雲安裝的windows server 版本,今天我和大家看一下windows系統如何安裝部署Nginx。
  • Nginx實戰入門教程
    由俄羅斯的程序設計師Igor Sysoev所開發,官方測試nginx能夠支支撐5萬並發連結(tomcat 500),並且cpu、內存等資源消耗卻非常低,運行非常穩定。2.應用場景  1、http伺服器。Nginx是一個http服務可以獨立提供http服務。可以做網頁靜態伺服器。  2、虛擬主機。可以實現在一臺伺服器虛擬出多個網站。
  • nginx+uwsgi部署django項目
    >安裝python3git clone項目部署uwsgi部署nginxadmin後臺靜態文件搜集(略)三、部署uwsgi1、使用pip安裝uwsgi2、測試uwsgi,編寫測試文件def application(env, start_response): start_response('200 OK', [(
  • .netcore 開發的 iNeuOS 物聯網平臺部署在 Ubuntu 作業系統,無縫跨平臺
    安裝mysql(1)實例安裝         ubuntu上安裝mysql比較簡單,只需要幾條命令就可以完成,如下:123developer:~$ sudo apt-get install mysql-serverdeveloper:~$ apt-get
  • centos8安裝Nginx
    yum install nginx安裝過程需要輸入確認信息,全部y 回車即可 ssl_module 也已具備 SSL證書使用需求