星期日, 1月 17, 2016

在Ubuntu 14.04 上安裝 Nginx + Laravel

在Ubuntu 14.04 上安裝 Nginx + Laravel

適用於 VirtualBox、VMware、Linode、DigitalOcean VPS、AWS 等 Ubuntu 作業系統上,運行的網站環境。

更新軟體列表

sudo apt-get update

安裝 Nginx 服務器、php5、php5在命令行運行的接口模組、加密擴展模組,最後還有git

sudo apt-get install nginx php5-fpm php5-cli php5-mcrypt git
安裝 git 是因為 composer 工具的基礎組件是 git,我們將使用 composer 安裝 Laravel 及更新相關的套件。

修改 PHP 配置文件

使用 nano 文書編輯器,來開啟PHP 配置文件
sudo nano /etc/php5/fpm/php.ini
使用ctrl+w 搜尋「cgi.fix_pathinfo」字串,將 cgi.fix_pathinfo 修改为 0,修補安全漏洞。
cgi.fix_pathinfo=0

啟用加密擴展模組

sudo php5enmod mcrypt

重新開啟 php5-fpm 服務

每次只要有更改到php 配置文件,都需要重啟,才會生效
sudo service php5-fpm restart

配置 Nginx 和網站目錄

新建立網站目錄資料夾
sudo mkdir -p /var/www/laravel
使用 nano 文書編輯器,來開啟Nginx 配置文件
sudo nano /etc/nginx/sites-available/defaul
修改如下:
server {
    listen 80 default_server;
    listen [::]:80 default_server ipv6only=on;

    # 設定網站根目錄
    root /var/www/laravel/public;
    # 網站默認首頁
    index index.php index.html index.htm;

    # 服務器名稱,server_domain_or_IP 請替換為自己設置的名稱或者 IP 地址
    #server_name server_domain_or_IP;

    # 修改為 Laravel 轉發規則,否則PHP無法獲取$_GET信息,提示404錯誤
    location / {
        try_files $uri $uri/ /index.php?$query_string;        
    }

    # PHP 支持
    location ~ \.php$ {
        try_files $uri /index.php =404;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass unix:/var/run/php5-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}

重新開啟 nginx 服務

同樣只要有更改到 nginx 配置文件,都需要重啟,才會生效
sudo service nginx restart

安裝 Composer

cd ~
curl -sS https://getcomposer.org/installer | php
將 composer.phar 移到/usr/local/bin/目錄下,如此一來,就可以在任何目錄下使用 Composer 這個指令
sudo mv composer.phar /usr/local/bin/composer

補充: Token 問題排除

安裝 composer 過程中,大量從 Github 網站下載安裝資料,有可能達到Github 流量上限,而被擋掉,需要輸入Token,才能繼續安裝,此時你必須登入到你的Github網站->你的帳號->settings -> Personal access tokens->權杖取名->Generate New Token->產出來的權杖,複製貼到命列視窗下,即可以繼續安裝。

安裝 Laravel 5.2

sudo composer create-project laravel/laravel laravel 5.2
可以選擇要安裝的版號 (如: 5.1或5.2),若不指定版號,則會安裝目前Laravel 最新版

更改網站檔案目錄擁有者

sudo chown -R :www-data /var/www/laravel

更改目錄權限

sudo chmod -R 775 /var/www/laravel/storage

開啟瀏覽器連線測試

最後可以開啟瀏覽器,網址列輸入你的伺服器網址或伺服器ip
http://你的網站伺服器網址或是你的伺服器IP
成功的話應該就可以看到 Laravel 的頁面。

1 則留言 :

  1. 奇怪!我看別人寫的文件就不成功,看你寫的文件就成功

    明明你們的內容是一樣的...XD 謝謝

    https://www.digitalocean.com/community/tutorials/how-to-install-laravel-with-an-nginx-web-server-on-ubuntu-14-04

    回覆刪除

回覆意見時,麻煩輸入一下暱稱
(隨便取個名字也好~ ^_^)
好讓我方便回覆您的問題,
選擇「名稱/網址」輸入您的暱稱,
麻煩一下,謝謝大家。

關閉廣告 [X]