CentOS 部署 Laravel 應用 記錄

莫名私下裡發表於2019-12-26

說明:僅做記錄使用。
更多請參考 GucciLee

  • 準備工作
    $ lsb_release -a // 檢視系統版本
    $ yum update // 升級所有包同時也升級軟體和系統核心
    $ yum upgrade //只升級所有包,不升級軟體和系統核心
  • 安裝 Nginx
    $ yum install nginx 

    Linux 部署 Laravel 應用 記錄

    
    出現 complete 即安裝成功
    $ systemctl nginx start   # 啟動 Nginx 
    $ systemctl nginx stop    # 停止 Nginx 
    $ systemctl nginx restart # 重啟 Nginx
    $ systemctl enable nginx.service # 設定開機自啟動
    $ systemctl disable nginx # 禁用 Nginx 開機啟動
    $ systemctl list-dependencies | grep nginx # 檢查開機自啟動是否設定成功
瀏覽器訪問不成功 解決辦法
方法一: systemctl stop firewalld.service  # 關閉防火牆
方法二: firewall-cmd --zone=public --add-port=80/tcp --permanent # 新增80埠
firewall-cmd --reload # 重啟防火牆
firewall-cmd --list-ports # 檢視是否新增成功
1212/tcp 80/tcp # 顯示 即成功 1212 設定的其他埠
瀏覽器訪問
Welcome to nginx! # 成功顯示
  • 安裝 PHP
    $ yum install -y php72w php72w-cli php72w-fpm # PHP 自身 / cli PHP 的命令列介面 / 用於管理 PHP 程式,並提供 FastCGI 介面與 Nginx 互動
    $ yum install -y php72w-mbstring php72w-xml php72w-bcmath # 安裝擴充套件 
    $ php -m # 檢視擴充套件
    $ php -v # 檢視 PHP 版本
    $ systemctl restart php-fpm # 重啟 PHP-FPM 
    $ systemctl start php-fpm # 啟動 PHP-FPM 
    $ systemctl stop php-fpm # 停止 PHP-FPM
    $ systemctl enable php-fpm # 啟用 PHP-FPM 開機啟動 
    $ systemctl disable php-fpm # 禁用 PHP-FPM 開機啟動  
    $ ps aux | grep php # 確認 PHP-FPM 正常執行 
  • 安裝 Git Composer
    Git
    ############################################
    $ yum install -y git
    $ git --version # 檢視 git 版本
    # 生成 SSH 祕鑰
    $ ls -al ~/.ssh # 檢視是否 存在 `id_rsa` 與檔案 `id_rsa.pub`
    $ ssh-keygen -t rsa -C "your_email@example.com" # 一路回車【密碼為空】
    $ ls -al ~/.ssh # 再次檢視是否生成成功
    $ cat ~/.ssh/id_rsa.pub # 檢視公鑰內容
    Composer
    ############################################
    $ php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"  # 或者使用 `$ wget -O composer-setup.php https://getcomposer.org/installer` $ php -r "if (hash_file('sha384', 'composer-setup.php') === 'a5c698ffe4b8e849a443b120cd5ba38043260d5c4023dbf93e1558871f1f07f58274fc6f4c93bcfd858c6bd0775cd8d1') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;" 
    $ php composer-setup.php --filename=composer --install-dir=/usr/local/bin --version=1.9.0 
    $ php -r "unlink('composer-setup.php');"  # 檢查安裝情況 
    $ composer --version # 淘寶全量映象【https://learnku.com/composer/wikis/30594】 
    $ composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/  
  • 安裝 MySQL
    $ rpm -ivh https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm # 安裝 mysql 官方 yum 源
    $ yum list |  grep mysql # 檢視 MySQL yum 源 發現只有 mysql80 的包,這是因為沒有開啟 mysql57 的包 
    $ yum-config-manager --disable mysql80-community # 關閉 80 包,開啟 57 包
    $ yum-config-manager --enable mysql57-community # 遇到問題 yum-config-manager: command not found  解決 安裝 yum -y install yum-utils
    $ yum list |  grep mysql # 發現有了 mysql57 的包
    $ yum install -y mysql-community-server # 安裝 mysql
    $ yum install -y mysql-community-client # 根據需要安裝(可不裝)
    $ systemctl start mysqld # 啟動 mysql
    $ systemctl stop mysqld # 停止 mysql
    $ service mysqld status # 或 ps -ef | grep mysql //檢查mysql正常啟動
    $ systemctl enable mysqld.service #設定mysqld服務開機自啟動  
    $ systemctl list-dependencies | grep mysqld #檢查mysqld開機自啟動是否設定成功
    $ grep 'temporary password' /var/log/mysqld.log # 檢視超級賬戶 root 臨時密碼 mysql5.7 增強了安全機制, 系統會自動生成一個隨機的密碼
    $ mysql  -uroot  -p
    mysql> ALTER USER "root"@"localhost" IDENTIFIED BY '你的新密碼'; # 修改超級賬戶 root 密碼
    mysql> flush privileges;
    mysql> exit;
    $ systemctl restart mysqld.service
  • 安裝 Redis
    $ yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm 
    $ yum install -y redis $ cat /etc/redis.conf # 檢視 redis 配置檔案【根據需要自行修改】 
    $ systemctl start redis # 啟動 redis 
    $ systemctl stop redis # 停止 redis 
    $ ps aux | grep redis # 檢視 redis 啟動情況 
    $ redis-cli # 進入 redis 互動命令 
    redis> keys * 
    redis>  exit  # 退出 

相關文章