環境架設心得

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


目錄

  • 安裝前必先執行 Part1
  • 安裝前必先執行 Part2
  • 安裝 Apache
  • 安裝 MySQL
  • 安裝 PHP
  • 下載 Composer
  • 安裝 Laravel
  • Apache 設定
  • 安裝 Git

安裝前必先執行 Part1

在安裝 LAMP 之前
必須先知道如何在 Ubuntu 18.04 中開啟 Command Line
快速鍵 CTRL+ALT+T

  • 安裝好用的文字編輯器
    sudo apt install vim
  • 開啟檔案(在 vim 編輯器內按下 ESC -> :wq 即可存檔)
    sudo vim test.php

安裝前必先執行 Part2

sudo apt update
sudo apt upgrade
sudo apt install software-properties-common
sudo apt install curl

安裝 Apache

在 apt 裡套件名稱為 apache2
目前安裝版本為 Apache/2.4.29

  • 安裝 Apache
    sudo apt install apache2
  • 檢查安裝版本
    sudo apache2 -v

安裝 MySQL

在 apt 裡套件名稱為 mysql-server
目前安裝版本為 MySQL/5.7.22
在安裝之前請先下載一個套件
為了確保安裝時會提示設定密碼的部份

  • 下載指令
    sudo wget https://dev.mysql.com/get/mysql-apt-config_0.8.10-1_all.deb
  • 執行指令
    sudo dpkg -i mysql-apt-config_0.8.10-1_all.deb
  • 開始安裝
    sudo apt update
    sudo apt install mysql-server
  • 檢查安裝版本
    sudo mysql --version
  • 安裝過程中如沒有讓你輸入密碼時
    • 刪除 MySQL
      sudo apt purge --auto-remove mysql-common mysql-server
      sudo apt autoremove
      sudo apt autoclean
    • 刪除設定檔
      sudo rm -rf /etc/mysql rm -rf /var/lib/mysql
  • 外部連線設定
    • 登入 MySQL
      mysql -u root -p
    • MySQL 版本 8.0 以上
      CREATE USER 'username'@'localhost' IDENTIFIED BY 'You Password';
      GRANT ALL PRIVILEGES ON * . * TO 'username'@'localhost' WITH GRANT OPTION;
      FLUSH PRIVILEGES;
    • MySQL 版本 8.0 以下
      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/mysql.conf.d/mysqld.cnf
      # 註解以下兩行,加上#即可
      # skip-external-locking
      # bind-address = 127.0.0.1

安裝 PHP

在 apt 裡套件名稱為 php7.* ,目前安裝版本為 PHP/7.2

  • 新增 ppa 來源
    sudo apt-add-repository ppa:ondrej/php
    sudo apt update
  • 安裝 PHP 及相關擴充
    sudo apt install php7.2
    sudo apt install php7.2-readline
    sudo apt install php7.2-xmlrpc
    sudo apt install php7.2-common php7.2-cli php7.2-curl php7.2-gd php7.2-json php7.2-dev php7.2-pgsql php7.2-sqlite3 php7.2-memcached php7.2-imap php7.2-mysql php7.2-mbstring php7.2-xml php7.2-zip php7.2-bcmath php7.2-soap php7.2-intl php7.1-mcrypt
  • 確認 PHP 外掛載入
    php -m
  • 安裝 Apache 的 PHP 模組
    sudo apt install libapache2-mod-php7.2

下載 Composer

  • 下載指令
    curl -sS https://getcomposer.org/installer | php
  • 移至全域可執行
    sudo mv composer.phar /usr/local/bin/composer
  • 檢查 Composer 是否安裝成功
    composer --version
    composer

安裝 Laravel

  • 家目錄建 Project 資料夾
    FileName → 你專案資料夾名稱

    composer create-project laravel/laravel --prefer-dist FileName
  • 將專案移至 /var/www/html
    sudo mv FileName /var/www/html/
  • 將 Project 資料夾權限改高
    sudo chmod -R 777 /var/www/html/FileName

Apache 設定

  • AllowOverride None 改成 All
    sudo vim /etc/apache2/apache2.conf
  • /var/www/html,後面加上你的專案名的public
    sudo vim /etc/apache2/sites-available/000-default.conf

安裝 Git

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

  • 安裝 Git
    sudo apt install git
  • 下載專案
    cd /var/www/html
    sudo git clone https://github.com/帳號名/專案名.git