[Filament] 如何在 Ubuntu 24.04 LTS 上安裝 PHP
目錄
〈1〉安裝 Ubuntu 基礎套件
步驟 1: 加入 ondrej/php PPA,為 Ubuntu 提供不同的 PHP 版本(5.6 ~ 8.2)
sudo add-apt-repository ppa:ondrej/php
步驟 2: 升級 Ubuntu
sudo apt update
步驟 3: 這些工具和軟體包覆蓋了從網路管理、安全、數據處理到系統監控的多種需求,對於開發者或系統管理員來說,這些都是非常實用的工具
sudo apt -y install curl network-manager unzip net-tools libnss3-tools jq xdg-utils openssl ca-certificates xsel htop
- ● -y 參數:表示自動回答 "yes" 以安裝所有必要的軟體包,而不提示使用者確認
- ● curl:用於從命令行介面進行數據傳輸的工具,支持多種協議(如 HTTP、FTP 等)
- ● network-manager:用於管理網路連接的工具,常用於桌面環境
- ● unzip:用於解壓 ZIP 壓縮檔案的工具
- ● net-tools:包含了一組用於網路配置和排除網路故障的工具,如 ifconfig、netstat 等
- ● libnss3-tools:包含一些網絡安全服務(NSS)工具,用於管理憑證、加密和安全協議
- ● jq:用於處理 JSON 資料的命令行工具
- ● xdg-utils:包含一組與桌面環境交互的工具,如打開 URL、查找應用程式等
- ● openssl:用於實現安全通信的工具和庫,支持多種加密算法和協議
- ● ca-certificates:包含了一組可信任的根憑證,用於驗證 SSL/TLS 連接
- ● xsel:用於在 X Window 系統中訪問剪貼簿的工具
- ● htop:一個互動式的進程查看工具,比 top 提供了更多的功能和更好的使用體驗
〈2〉安裝 nodejs 和 npm
sudo apt install nodejs
sudo apt install npm
node -v
查看當前 Node.js 的版本〈3〉啟用 cron
sudo vi /etc/rsyslog.d/50-default.conf
將 cron.* 前面的 # 註解拿掉
〈4〉安裝 php
步驟 1: 安裝 PHP 8.2 以及多個常用的擴展模組,使 PHP 能夠處理更多樣的任務
sudo apt -y install php8.2-common php8.2-cli php8.2-curl php8.2-redis php8.2-bcmath php8.2-mbstring php8.2-xml php8.2-zip php8.2-posix php8.2-sqlite3 php8.2-pgsql
- ● php8.2-common:提供 PHP 8.2 的一些通用功能
- ● php8.2-cli:提供命令行介面的 PHP 8.2
- ● php8.2-curl:提供 PHP 8.2 的 cURL 擴展,用於處理 URL 資源
- ● php8.2-redis:提供 PHP 8.2 的 Redis 擴展,用於與 Redis 資料庫交互
- ● php8.2-bcmath:提供 PHP 8.2 的 Bcmath 擴展,用於高精度數學運算
- ● php8.2-mbstring:提供 PHP 8.2 的多位元組字串處理擴展
- ● php8.2-xml:提供 PHP 8.2 的 XML 處理功能
- ● php8.2-zip:提供 PHP 8.2 的 ZIP 檔案處理功能
- ● php8.2-posix:提供 PHP 8.2 的 POSIX 擴展
- ● php8.2-sqlite3:提供 PHP 8.2 的 SQLite3 資料庫支持
- ● php8.2-pgsql:提供 PHP 8.2 的 PostgreSQL 擴展
步驟 2: 查看當前 PHP 版本
php --version
〈5〉安裝 Composer
步驟 1: 查看當前 Composer 版本
composer --version
步驟 2: 將 Composer 的全局安裝路徑添加到 PATH 環境變數中
1.nano ~/.profile
打開 ~/.profile 文件2. 在文件末尾添加這一行
export PATH="$PATH:$HOME/.config/composer/vendor/bin"
3. 保存並退出編輯器(在 nano 中按 Ctrl+O,然後按 Enter,再按 Ctrl+X 退出)
4.
source ~/.profile
為了使修改立即生效,執行這行命令重新加載 ~/.profile 文件〈6-1〉安裝 MariaDB
sudo apt update
更新軟體包索引sudo apt install mariadb-server
安裝 MariaDBsudo systemctl start mariadb
啟動 MariaDB 服務sudo systemctl enable mariadb
設置 MariaDB 以開機自動啟動sudo systemctl status mariadb
顯示 MariaDB 服務的詳細狀態資訊sudo systemctl stop mariadb
停止 MariaDB 服務sudo systemctl disable mariadb
禁用它的自動啟動sudo apt remove --purge mariadb-*
刪除所有與 MariaDB 相關的套件sudo apt autoremove --purge
自動清理不再需要的套件和依賴mariadb --version
檢查 MariaDB 的版本[解決方案] valet install --mariadb 命令中的 --mariadb 選項無效,這表示 valet-linux-plus 版本不支持該選項。你可以按照以上步驟,手動安裝和配置 MariaDB
[解決方案] 遇到 "Invalid database credentials" 的錯誤,這表示提供的用戶名或密碼不正確。以下是可能的解決方案
# 進入 MariaDB 管理介面 sudo mysql -u root -p # 創建了一個名為 test 的新用戶,並賦予它所有資料庫的所有權限 CREATE USER 'test'@'localhost' IDENTIFIED BY 'test'; GRANT ALL PRIVILEGES ON *.* TO 'test'@'localhost' WITH GRANT OPTION; FLUSH PRIVILEGES; # 退出 MariaDB 管理介面 exit
[解決方案] 使用 HeidiSQL 圖形界面來管理 MariaDB 資料庫
☞ Connect WSL's MySQL from Windows Host Machine# 以 root 用戶身份登入 MariaDB,並且使用 sudo 命令來提升權限,無需輸入 MariaDB 的密碼 sudo mysql -u root # 查詢用戶帳號 SELECT user, host FROM mysql.user; # 退出 MariaDB 管理介面 exit # 指定的 MariaDB 用戶(例如 test)登入 MariaDB,並且需要輸入該用戶的密碼登入 MariaDB mysql -u test -p # 重設其他用戶的密碼 ALTER USER 'root'@'localhost' IDENTIFIED BY 'root'; # 退出 MariaDB 管理介面 exit # 指定的 MariaDB 用戶(例如 root)登入 MariaDB,並且需要輸入該用戶的密碼登入 MariaDB mysql -u root -p # 列出伺服器上的所有資料庫 show databases; # 退出 MariaDB 管理介面 exit
〈6-2〉安裝 PostgreSQL
步驟 1: 連線 PostgreSQL 官網
☞ PostgreSQL☞ Install PostgreSQL16.2 on Ubuntu 24
步驟 2: 使用手動設定
# Import the repository signing key: sudo apt install curl ca-certificates sudo install -d /usr/share/postgresql-common/pgdg sudo curl -o /usr/share/postgresql-common/pgdg/apt.postgresql.org.asc --fail https://www.postgresql.org/media/keys/ACCC4CF8.asc # Create the repository configuration file: sudo sh -c 'echo "deb [signed-by=/usr/share/postgresql-common/pgdg/apt.postgresql.org.asc] https://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list' # Update the package lists: sudo apt update # Install the latest version of PostgreSQL: # If you want a specific version, use 'postgresql-16' or similar instead of 'postgresql' sudo apt -y install postgresql-16
步驟 3: 檢查 PostgreSQL 服務的狀態
sudo systemctl status postgresql # 使用 su 命令切換到該用戶 sudo su - postgres # 在 psql 提示符下輸入 (q 鍵: 退出分頁工具,返回到 psql 提示符) # 顯示 PostgreSQL 伺服器的完整版本信息 select version(); # 重設用戶密碼 alter user postgres with password 'postgres'; # 列出所有資料庫的名稱 select datname from pg_database; # 查看 \l # 退出 psql \q
步驟 4: 使用 pgAdmin 圖形界面來管理 PostgreSQL 資料庫
☞ pgAdmin☞ How to install PostgreSQL on WSL Ubuntu and connect pgAdmin
步驟 5: 其他指令
sudo apt install postgresql
安裝 PostgreSQLsudo systemctl start postgresql
啟動 PostgreSQL 資料庫服務sudo systemctl enable postgresql
使 PostgreSQL 服務開機自動啟動sudo systemctl status postgresql
檢查 PostgreSQL 服務的狀態sudo systemctl stop postgresql
停止 PostgreSQL 服務sudo systemctl disable postgresql
禁止 PostgreSQL 服務開機自動啟動sudo apt remove --purge postgresql* postgresql-client* postgresql-contrib*
刪除所有與 PostgreSQL 相關的套件sudo apt autoremove --purge
自動清理不再需要的套件和依賴psql --version
檢查 PostgreSQL 的版本〈7〉安裝 Valet Valet 是一個輕量級的 Laravel 開發環境
composer global require genesisweb/valet-linux-plus
使用 Composer 安裝 Valet 的 Linux 擴展版本composer global show genesisweb/valet-linux-plus
確認 Valet 是否已經安裝valet install
valet --version
檢查 Valet 命令是否可用,如果一切正常,應該會顯示 Valet 的版本號valet fix
檢查和修復 Valet。Nginx 的日誌通常位於 /var/log/nginx 目錄中valet status
一個非常有用的工具,可以幫助你了解 Valet 和相關服務的運行情況〈8〉Hello, Valet!
步驟 1
pwd
顯示當前所在的目錄的完整路徑mkdir ~/php-projects cd ~/php-projects mkdir my-first-project cd my-first-project // 在專案目錄中創建 PHP 文件 valet link // 將當前目錄添加到 Valet 管理 valet links // 查看已管理的目錄 valet restart valet status
[解決方案] 如何透過 VS Code 編輯 WSL 環境中的專案
☞ 在 WSL 中開發[解決方案] 不需要的鏈接,無法在 Valet 管理的專案列表中移除
// 進到 Valet 符號鏈接的目錄 cd ~/.config/valet/Sites // 刪除符號鏈接 rm abc.test.test // 重啟 Valet valet restart // 再次檢查 Valet 管理的符號鏈接 valet links
[解決方案] 刪除專案
// 將當前目錄從 Valet 管理中移除 valet unlink // 強制刪除目錄 rm -rf my-first-project // 刪除證書 cd ~/.config/valet/Nginx rm my-first-project.test // 刪除 windows 證書 C:\Users\user\cert // 移除 windows hosts 文件裡的 url C:\Windows\System32\drivers\etc\hosts // 重啟 Valet valet restart // 確認 Valet 和相關服務的運行情況 valet status
步驟 2:
在 Windows 中,打開C:\Windows\System32\drivers\etc\hosts
手動編輯 hosts 文件假設你希望通過 my-first-project.test 訪問本地的 PHP 專案,可以添加類似以下的行:
127.0.0.1 my-first-project.test
步驟 3:
訪問你的專案 http://my-first-project.test步驟 4:
通過 HTTPS 訪問你的專案 https://my-first-project.test// 進到你的專案 cd my-first-project // 為你的專案生成和安裝 SSL 證書 valet secure // 在 window 的 cmd 執行指令 (C:\Users\user\cert) mkcert -cert-file my-first-project.test.pem -key-file my-first-project.test.key.pem my-first-project.test // 編輯證書,將 ssl_certificate、ssl_certificate_key 指向 window 產生的證書 cd ~/.config/valet/Nginx vi 證書 ssl_certificate /mnt/c/Users/user/cert/my-first-project.test.pem; ssl_certificate_key /mnt/c/Users/user/cert/my-first-project.test.key.pem; // 確保 Valet 的服務已重新啟動並應用了新的證書 valet restart // 確認 Valet 和相關服務的運行情況 valet status
Source
☞ ubuntu使用PPA安裝其它php版本☞ how To Install PHP On Ubuntu 20.04 or 22.04
☞ How to install Laravel 11 on Ubuntu 24.04 LTS [ PHP 8.3, Composer, SQLite ] | Create Laravel project
☞ How to Install PHP (from 8.3 down to 5.6) on Ubuntu 24.04
☞ 簡單介紹 Laravel Valet 如何安裝與使用
☞ INSTALL LARAVEL VALET LINUX IN WINDOWS PC (UBUNTU WSL) ★
☞ valet linux
☞ How to remove MySQL server completely from Ubuntu 24.04 LTS (Linux) ★
沒有留言: