如何在 CentOS 7 Nginx 上安裝及設定

BUBU 因為最近想要開始學習如何使用 PHP Laravel MVC 框架來開發一些應用程式,讓我在工作或者生活上能有更方便的工具可以使用,本篇是記錄怎麼設定環境。

本篇是已經安裝好了 Nginx 、 PHP7.3 、 MaraDB 10.3.15 版本

設定 Laravel 環境要先安装 PHP Composer

PHP 使用 Composer 管理套件、函式厙

Composer 是一隻 Phar 的執行程式(Phar 會將程式打包成一隻執行檔), 可以安裝於自己目錄 或 Global 環境, 在此就只先紀錄 安裝 與 操作使用 的方式.

Composer 安裝

Composer 安裝很簡單, 只要下述步驟即可: (參考資料可見: Composer Introduction)

  1. $ curl -sS https://getcomposer.org/installer | php # 會產生 composer.phar, 產生完就可以執行操作.
  2. $ sudo mv composer.phar /usr/local/bin/composer # 搬到全域環境並改名成 composer 方便操作
  3. 到此就完成囉~
  4. 註: 安裝於全域環境(Globally), 升級就會需要 sudo composer self-update
  5. 自己升級: sudo composer selfupdate # composer 升級
  6. 套件升級: composer update

安裝完後到 Web 服務器目錄下,下載新版的 Laravel Framework

composer create-project laravel/laravel /usr/share/nginx/html/laravel

下載完之後再給該目錄給予 Nginx 服務器權限

chown -R nginx:nginx laravel/

在進到 laravel 目錄下,並將 storage 目錄權限更改為 775

cd laravel

chmod -R 775 storage/

 

設定 Nginx 設定檔

server {
    listen       80;
    server_name  server_domain_name_or_IP;

    # note that these lines are originally from the "location /" block
    root   /usr/share/nginx/html/laravel/public/;
    index index.php index.html index.htm;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }
    error_page 404 /404.html;
    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
        root /usr/share/nginx/html;
    }

    location ~ \.php$ {
        try_files $uri =404;
        fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}

設定完後,重啟 web 服務器

systemctl restart nginx 

開啟瀏灠器輸入 http://ip 如果有設定成功會頁面會顯示如下:

laravel.png

剛剛在看課程的時候實際操作上有些問題,那 Laravel  還有一個必需要的套件,基本的 CentOS 7 預設是沒有安裝,需要手動下載安裝

yum install npm -y

 

參考相關網頁: