程式語言 - LNMP 學習筆記 - CentOS + Laravel

每當我自己在找 LNMP - CentOS + Laravel 的攻略時,總是東開一個網頁,西開一個網頁,於是我就把這些東開西開的把它們全部都統整起來,來跟著筆記照著步驟做,一起來學習吧,GO!

  • 安裝需知
  • 安裝 Nginx
  • 安裝 MariaDB
  • 安裝 PHP
  • 下載 Composer
  • 安裝 Laravel
  • Nginx 設定
  • 安裝 Git

安裝前必先執行

如果你是用VMWARE且網路在安裝前沒有開通的話

sudo dhclient -v

安裝好用的文字編輯器

sudo yum install vim

vim 編輯存檔 按ESC後 :wq


安裝前必先執行

sudo yum install epel-release
sudo yum update
sudo yum install gcc
sudo yum install -y tcl

關閉selinux

setenforce 0
vim /etc/selinux/config
SELINUX=disabled
#SELINUXTYPE=targeted

安裝 Nginx

#安裝 Nginx

sudo yum install nginx

#檢查安裝版本

sudo nginx -v

安裝 MariaDB

在安裝之前請先建立檔案,安裝版本為10

/etc/yum.repos.d/MariaDB.repo
[mariadb]
name=MariaDB
baseurl=http://yum.mariadb.org/10.0/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

#安裝 MariaDB

yum install MariaDB-server MariaDB-client -y

#檢查安裝版本

sudo mysql --version

#安裝過程沒有讓你輸入密碼,預設為空

sudo mysql_secure_installation

#輸入root密碼,剛安裝完密碼是空的,直接按Enter即可

Enter current password for root (enter for none):

#設定root密碼

Set root password? [Y/n] y

#移除預設的匿名帳號

Remove anonymous users? [Y/n] y

#禁止root帳號從遠端登入

Disallow root login remotely? [Y/n] y

#移除測試用的 test 資料庫

Remove test database and access to it? [Y/n] y

#立即重載讓設定生效

Reload privilege tables now? [Y/n] y

#刪除設定檔

sudo rm -rf /etc/mysql rm -rf /var/lib/mysql

#外部連線設定
#登入mysql

mysql -u root -p

#外部連線設定語法

  1. username: root
  2. localhost: %
  3. You Password: 你資料庫的密碼
GRANT ALL PRIVILEGES ON *.* TO 'username'@'localhost' IDENTIFIED BY 'You Password' WITH GRANT OPTION;
FLUSH PRIVILEGES;

#開啟 mysql 資料庫

use mysql;

#刪除 User , Host 為 root , localhost

DELETE FROM user WHERE User="root" AND Host="localhost";

#設定設定檔

sudo vim  /etc/mysql/mariadb.conf.d/50-server.cnf

#註解以下兩行,加上#即可

#skip-external-locking
#bind-address = 127.0.0.1

安裝 PHP

#安裝版本為 PHP 7.0
#新增 ppa 來源

sudo yum install centos-release-scl

#安裝 PHP 及相關擴充

sudo yum install rh-php70 rh-php70-php-fpm rh-php70-php-mysqlnd

#修改 /etc/opt/rh/rh-php70/php-fpm.d/www.conf

listen = 127.0.0.1:9000
user = nginx
group = nginx

#修改 etc/opt/rh/rh-php70/php.ini

cgi.fix_pathinfo=0
sudo yum --enablerepo=remi,epel install php php-zip php-mysql php-mcrypt php-xml php-mbstring

#確認 PHP 外掛載入

php -m

下載 Composer

curl -sS https://getcomposer.org/installer | php

移至全域可執行

sudo mv composer.phar /usr/local/bin/composer

#檢查 Composer 是否安裝成功

composer --version
composer

安裝 Laravel

最方便的方式是在家目錄下建 Project 的資料夾
再將此資料夾移去 /usr/share/nginx/html 下
#家目錄建 Project 資料夾

composer create-project laravel/laravel --prefer-dist FileName

FileName → 你專案資料夾名稱
#將專案移至 /usr/share/nginx/html

sudo mv FileName /usr/share/nginx/html

mv 要移的檔案 空一格 你的目的地位置

#將 Project 資料夾權限改高

sudo chmod -R 777 /usr/share/nginx/html FileName

#Nginx 設定

vim /etc/nginx/nginx.conf
root /usr/share/nginx/html/FileName/public
systemctl restart nginx

#安裝 Git
如果是拉專案同步的話
請先安裝Git

#安裝 Git

sudo yum install git

#下載專案

cd /usr/share/nginx/html
sudo git clone https://github.com/帳號名/專案名.git

輸入完帳號/密碼即可