在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 的頁面。