返回
手把手教你:如何在 M1 芯片 Mac 上安装和配置 MNMP 栈
后端
2023-12-07 16:39:48
前言
MNMP 栈是 Web 开发中常用的软件组合,包括 MySQL/MariaDB 数据库管理系统、Nginx Web 服务器和 PHP 编程语言。通过将这三个组件集成在一起,你可以轻松搭建一个本地开发环境,用于构建和测试 Web 应用程序。
安装 Homebrew
在开始安装 MNMP 栈之前,我们需要先安装 Homebrew,这是一个开源的软件包管理工具,可以轻松地在 Mac 上安装各种软件。
- 打开终端(Terminal)并输入以下命令:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
-
按照提示输入你的密码。
-
安装完成后,运行以下命令更新 Homebrew:
brew update
安装 MySQL/MariaDB
接下来,我们需要安装 MySQL 或 MariaDB 数据库管理系统。这两个数据库系统非常相似,你可以根据自己的喜好选择其中之一。
安装 MySQL
brew install mysql@8.0
安装 MariaDB
brew install mariadb
安装 Nginx
现在,我们需要安装 Nginx Web 服务器。
brew install nginx
安装 PHP
最后,我们需要安装 PHP 编程语言。
brew install php@8.1
配置 MySQL/MariaDB
安装完成后,我们需要配置 MySQL/MariaDB。
- 启动 MySQL/MariaDB 服务:
brew services start mysql@8.0
或
brew services start mariadb
- 创建一个新的数据库用户和数据库:
mysql -u root -p
CREATE USER 'your_username'@'localhost' IDENTIFIED BY 'your_password';
CREATE DATABASE your_database;
GRANT ALL PRIVILEGES ON your_database.* TO 'your_username'@'localhost';
FLUSH PRIVILEGES;
- 退出 MySQL/MariaDB:
quit
配置 Nginx
接下来,我们需要配置 Nginx。
- 复制并编辑 Nginx 的配置文件:
sudo cp /usr/local/etc/nginx/nginx.conf /usr/local/etc/nginx/nginx.conf.bak
sudo nano /usr/local/etc/nginx/nginx.conf
- 在配置文件中找到以下部分:
http {
include mime.types;
default_type application/octet-stream;
# ...
server {
listen 80;
server_name localhost;
# ...
}
}
- 在
server
块中添加以下内容:
location / {
root /usr/local/var/www/html;
index index.php index.html;
}
- 保存并关闭配置文件。
配置 PHP
最后,我们需要配置 PHP。
- 复制并编辑 PHP 的配置文件:
sudo cp /usr/local/etc/php/8.1/php.ini-production /usr/local/etc/php/8.1/php.ini
sudo nano /usr/local/etc/php/8.1/php.ini
- 在配置文件中找到以下部分:
extension=mysqli.so
- 取消注释并保存配置文件。
测试 MNMP 栈
现在,我们可以测试一下 MNMP 栈是否工作正常。
- 创建一个新的 PHP 文件,并将其保存为
index.php
:
<?php
<?php
$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_database";
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检查连接
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 查询数据库
$sql = "SELECT * FROM users";
$result = $conn->query($sql);
// 输出结果
if ($result->num_rows > 0) {
// 输出数据
while($row = $result->fetch_assoc()) {
echo "id: " . $row["id"]. " - Name: " . $row["name"]. " " . $row["email"]. "<br>";
}
} else {
echo "0 results";
}
// 关闭连接
$conn->close();
?>
- 将
index.php
文件复制到 Nginx 的根目录:
sudo cp index.php /usr/local/var/www/html
- 重启 Nginx 服务:
brew services restart nginx
- 在浏览器中访问
http://localhost
。
如果一切正常,你应该会看到一个显示数据库中所有用户信息的页面。
总结
恭喜你!你已经成功地在 M1 芯片的 Mac 上安装和配置了 MNMP 栈。现在,你就可以开始使用这个本地开发环境来构建和测试 Web 应用程序了。