



























最近折腾网站细节的频率有点高,时不时就会因为一行代码的改动导致线上站点出故障。为了避免这种 “心惊胆战” 的操作,于是决定搭建一套本地Web环境来做测试。最开始选了MAMP,结果发现免费版功能太单一,连数据导入的入口都难找,更头疼的是,不少代码在MAMP里测试完全没问题,放到真实服务器上却各种报错。折腾了几次实在忍不了,干脆放弃集成工具,直接在 macOS 系统上手动配置一套原汁原味的 PHP+Nginx+MySQL 环境,顺便把 WordPress 也部署好。
由于macOS没有预装PHP,所以可用官方PHP安装器:
`php -v`验证安装
Homebrew是macOS上的包管理器,使用它安装PHP更加灵活。
1. 安装Homebrew:
bash
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
因为网络等因素上面的链接可能会导致安装失败,可以试一下下面的清华大学提供的镜像:
bash
git clone --depth=1 https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/install.git brew-install
/bin/bash brew-install/install.sh
rm -rf brew-install
也可使用国内的镜像源:
bash
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
2. 如果之前安装失败,可能需要先清理:
bash
sudo rm -rf /opt/homebrew
3. 也可手动进行安装
3.1. 创建目录
bash
sudo mkdir -p /opt/homebrew
sudo chown -R $(whoami) /opt/homebrew
3.2. 下载最小核心
bash
curl -L https://github.com/Homebrew/brew/tarball/master | tar xz --strip 1 -C /opt/homebrew
3.3. 添加 PATH
bash
echo 'export PATH="/opt/homebrew/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc
4. 安装完成后,运行以下命令更新Homebrew:
bash
brew update
1. 安装PHP:
bash
# 安装最新稳定版 PHP
brew install php
# 或者安装特定版本(推荐,更稳定)
brew install php@8.3
2. 将 PHP 添加到 PATH
bash
echo 'export PATH="/opt/homebrew/opt/php@8.3/bin:$PATH"' >> ~/.zshrc
echo 'export PATH="/opt/homebrew/opt/php@8.3/sbin:$PATH"' >> ~/.zshrc
3. 验证安装:
bash
php -v
或
php -v
brew services list | grep php
4. 启动 PHP 服务
bash
# 启动 PHP-FPM(Web 服务器需要)
brew services start php@8.3
# 查看服务状态
brew services list
5. 安装后的常用操作
5.1 查看 PHP 配置信息:
bash
# 查看 PHP 配置文件位置
php --ini
# 查看已安装的扩展
php -m
# 查看 PHP 详细信息
php -i | head -20
5.2 安装常用扩展:
bash
# 安装常用扩展
brew install autoconf pkg-config
# 通过 PECL 安装扩展
pecl install redis
pecl install xdebug
1. 安装并启动数据库
bash
# 安装MySQL
brew install mysql
# 启动MySQL服务,并设置为开机自启
brew services start mysql
# 运行安全初始化脚本,设置root密码(务必牢记此密码)
mysql_secure_installation
执行mysql_secure_installation时,根据提示设置root密码,并一路按 Y 确认其他安全选项即可。
1. 安装 Nginx:
bash
# 安装Nginx
brew install nginx
# 启动Nginx服务
brew services start nginx
接下来,需要编辑Nginx的配置文件,让它能处理PHP。
2. 配置 Nginx:
bash
# 编辑 Nginx 配置
nano /opt/homebrew/etc/nginx/nginx.conf
在 server 块中修改:
bash
server {
listen 8080;
server_name localhost;
# 设置项目目录
root /Users/alexwang/Sites;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
# 配置 PHP 处理
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
修改后保存,然后让Nginx重新加载配置
bash
nginx -s reload
启动服务:
bash
# 启动 PHP-FPM
brew services start php@8.3
# 启动 Nginx
brew services start nginx
# 查看运行状态
brew services list
1. 下载并放置WordPress:
bash
# 进入网站根目录
cd /usr/local/var/www
# 下载最新的WordPress压缩包
curl -O https://wordpress.org/latest.tar.gz
# 解压
tar -zxvf latest.tar.gz
# 这会在当前目录生成一个 wordpress 文件夹。
# 你可以将文件夹内容移动到根目录,或者直接将其作为站点目录。
# 简单起见,我们将内容移动到根目录覆盖:
mv wordpress/* .
# 设置必要的文件权限(让Web服务器能读写)
sudo chown -R :_www /usr/local/var/www
sudo chmod -R 755 /usr/local/var/www
2. 为WordPress创建数据库和用户
连接到MySQL,并执行以下SQL命令来创建数据库和用户:
bash
mysql -u root -p
输入你之前设置的root密码后,进入MySQL命令行,然后执行(你可以自定义 database_name、username 和 password):
bash
CREATE DATABASE database_name DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON database_name.* TO 'username'@'localhost';
FLUSH PRIVILEGES;
EXIT;
请务必记录好你设置的数据库名、用户名和密码,下一步安装WordPress时会用到。
3. 完成WordPress安装
安装前必须确保启动了相关的服务
bash
# 启动Nginx(根据提示,你已安装但可能未启动)
brew services start nginx
# 启动PHP-FPM
brew services start php
# 启动MySQL(如果你之前已安装)
brew services start mysql
打开浏览器,访问:
你应该会看到WordPress著名的五分钟安装界面。按照提示:
选择语言。
在数据库配置页,填入第4步中创建的 数据库名、用户名、密码。“数据库主机”填写 localhost,“表前缀”保持默认 wp_ 即可。
运行安装程序,设置你的网站标题、管理员用户名、密码和邮箱。
安装成功后,用你设置的管理员账号登录,就可以开始管理你的WordPress站点了。
安全提醒与后续建议
不要在生产环境中使用:此配置(root权限、默认端口等)仅为本地开发测试而设。要部署到公网,必须进行更严格的安全配置。
端口问题:如果访问 http://localhost:8080 失败,请确认Nginx确实在监听8080端口(可通过查看配置),或检查是否有其他程序占用端口。
权限问题:如果安装或更新WordPress插件/主题时提示需要FTP凭证,是因为Web服务器进程(_www)对文件的所有权不对。可以通过命令行进入目录执行 sudo chown -R _www /usr/local/var/www 来解决(但这会改变文件所有者,请根据情况使用)。
在 macOS 上为 WordPress 导入已有的 MySQL 数据库,先通过命令行将 .sql 文件导入到新创建的数据库中,然后修改WordPress的 wp-config.php 文件以匹配新的数据库信息。
1. 准备数据库文件
确认你的.sql备份文件(例如 my_wordpress_backup.sql )存放的位置。为方便操作,建议将其放在用户主目录(~)下,或在后续命令中使用文件的完整路径。
2. 登录MySQL并创建目标数据库
2.1 打开终端,登录MySQL。使用安装时设置的 root 密码:
bash
mysql -u root -p
输入密码后,你会看到mysql>提示符。
2.2 创建一个新的、空数据库,用于存放导入的数据。请替换 my_wordpress_db 为你喜欢的数据库名(下文命令需保持一致):
bash
CREATE DATABASE my_wordpress_db DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
使用 utf8mb4 字符集可确保完美兼容 WordPress 和所有语言字符。
2.3 创建专用用户并授权(推荐,比直接使用 root 更安全)。替换 wp_user 和 your_strong_password:
bash
CREATE USER 'wp_user'@'localhost' IDENTIFIED BY 'your_strong_password';
GRANT ALL PRIVILEGES ON my_wordpress_db.* TO 'wp_user'@'localhost';
FLUSH PRIVILEGES;
2.4 退出MySQL命令行:
bash
exit
3. 执行导入操作
在系统终端(非MySQL命令行)中,使用 mysql 命令导入。请替换 my_wordpress_db 和文件路径:
bash
mysql -u root -p my_wordpress_db > ~/path/to/your/my_wordpress_backup.sql
-u root -p表示以root用户登录,会提示输入密码。my_wordpress_db 是刚创建的空数据库名。~/path/to/your/my_wordpress_backup.sql 是你的备份文件完整路径。一个实用技巧:在终端输入 mysql -u root -p my_wordpress_db < 后,直接将 .sql 文件拖拽到终端窗口,其完整路径会自动填充。导入完成后终端通常无提示,直接返回命令符。
4. 验证导入成功
再次登录MySQL,检查数据是否已存在:
bash
mysql -u root -p
在 mysql> 提示符下执行:
bash
-- 切换到导入的数据库
USE my_wordpress_db;
-- 查看所有表,应该看到 wp_posts, wp_users 等WordPress表
SHOW TABLES;
-- 可以抽查一条数据
SELECT COUNT(*) FROM wp_posts;
如果看到表和数据,说明导入成功。
5. 修改 WordPress 配置文件
导入数据库后,必须让 WordPress 知道如何连接它。编辑网站根目录下的 wp-config.php 文件:
bash
nano /opt/homebrew/var/www/wp-config.php
找到并修改以下四行,确保与第二步创建的信息完全一致:
php
// ** 数据库设置 - 具体信息来自您当前所用主机 ** //
define( 'DB_NAME', 'my_wordpress_db' ); // 第二步创建的数据库名
define( 'DB_USER', 'wp_user' ); // 第二步创建的数据库用户名
define( 'DB_PASSWORD', 'your_strong_password' ); // 第二步创建的数据库用户密码
define( 'DB_HOST', 'localhost' ); // 通常为localhost
保存并退出(Ctrl+O, Ctrl+X)。
6. 测试网站
在浏览器中访问 http://localhost:8080,你的 WordPress 网站现在应该能正常显示,并使用导入的数据运行了。
导入失败或报错:
路径错误:使用拖拽文件到终端的方法可避免输入错误。
文件过大:可在导入命令中添加 --max_allowed_packet=512M 参数。
权限问题:确保备份文件有读取权限(chmod 644 backup.sql)。
网站显示“建立数据库连接时出错”:
100%是 wp-config.php 中的数据库信息填写错误,请仔细核对。
检查MySQL服务是否运行:brew services list | grep mysql。
这些是集成开发环境,包含PHP、Apache和MySQL:
安装后,您可以在应用程序的控制面板中配置和启动PHP。
安装后,如果在终端中运行php命令仍然提示command not found,您可能需要配置环境变量:
1. 打开或创建`~/.zshrc`文件(macOS 10.15及更高版本默认使用zsh):
bash
nano ~/.zshrc
2. 在文件末尾添加PHP的安装路径(根据您的实际安装路径调整):
bash
export PATH="/usr/local/php/bin:$PATH"
或者如果使用Homebrew安装:
bash
export PATH="$(brew --prefix php)/bin:$PATH"
3. 保存文件并退出编辑器,然后运行以下命令使更改生效:
bash
source ~/.zshrc
安装完成后,您可以创建一个简单的PHP文件来测试:
1. 创建一个名为test.php的文件,内容如下:
php
<?php
phpinfo();
?>
2. 在终端中运行:
bash
php test.php
如果看到PHP的配置信息,说明PHP已成功安装并可以正常运行。
- 如果在安装过程中遇到权限问题,请使用sudo命令(例如sudo brew install php)
- 如果使用Homebrew安装后仍然无法找到PHP命令,请尝试重启终端
- 对于macOS的beta版本,某些软件包可能需要特殊处理
完成安装后,您就可以执行PHP命令并运行我们之前创建的网站了。
那年 • 今日
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。