Mac配置PHP
前言
在MacOS中已经内置了PHP和Apache,所以不需要再额外安装它们,只需要简单几步即可运行PHP。
配置Apache
-
查看Apache版本:
$ sudo apachectl -v
-
终端关闭Apache:
$ sudo apachectl stop
-
终端启动Apache:
$ sudo apachectl start
,输入mac系统密码后即可启动apache服务。 -
启动Apache后,在浏览器中输入
http://localhost/
后,就可以看到默认的PHP欢迎页面了。
# 在哪更改默认页面?
在浏览器输入localhost指向的是"/Library/WebServer/Documents/"目录,这个目录就是apache的默认根目录。
配置PHP
虽然mac中已经安装了PHP,但是默认是不开启的,开启需要以下几步:
- 终端打开apache的配置文件
$ sudo vi /etc/apache2/httpd.conf
- 找到"#LoadModule php5_module libexec/apache2/libphp5.so"这一行
- 去掉这一行前面的'#'号
- 保存退出(按esc - 输入wq!)
# 如何运行一个PHP的HelloWorld?
- 进入apache根目录文件夹
- 新建一个文件夹并取名
php1
- 在php1中创建一个
index.php
的文件 - 在文件中写入以下代码后保存文件。
<?php echo "Welcome to PHP's World ! ";?>
- 浏览器中输入
http://localhost/php1/
结果如下:
注意:如果没有在上一步中开启PHP,那么运行时就会出现这个错误:
安装Mysql
安装mysql很简单,在官网: http://dev.mysql.com/downloads/mysql/找到对应的包,直接安装即可。
安装后在'System Perferences'中就可以看见mysql的图标了:
图标点进去以后可以设置开机自动启动,也可以手动启动,洁癖癌晚期的博主就不开启自动启动了,点击start后mysql显示启动成功,到此mysql就安装完成了。
# 为什么在终端下不能使用mysql命令?
虽然安装好了mysql,但是在终端下运行mysql命令却发现说找不到mysql这个命令,这是mysql的路径问题,系统找不到mysql,所以我们需要给mysql加个别名,解决方案如下:
- 终端运行:
sudo vi /etc/bashrc
- 写入
alias mysql='/usr/local/mysql/bin/mysql'
- 另起一行写入
alias mysqladmin='/usr/local/mysql/bin/mysqladmin'
- 保存退出
- 输入
mysql -v
看到如下界面就算成功了
提示:如果看不到以下界面,可以重启bash试试,还不行就重启机器。
# Mysqladmin是什么?
简单来说就是用来管理mysql的工具。
用法是:$ mysqladmin [OPTIONS] command [command-option]
具体命令可以通过$ mysqladmin --help
来查看
常用的命令有:
create databasename 创建一个新数据库
drop databasename 删除一个数据库及其所有表
extended-status 给出服务器的一个扩展状态消息
flush-hosts 洗掉所有缓存的主机
flush-logs 洗掉所有日志
flush-tables 洗掉所有表
flush-privileges 再次装载授权表(同reload)
kill id,id,... 杀死mysql线程
password 新口令,将老口令改为新口令
ping 检查mysqld是否活着
processlist 显示服务其中活跃线程列表
reload 重载授权表
refresh 洗掉所有表并关闭和打开日志文件
shutdown 关掉服务器
status 给出服务器的简短状态消息
variables 打印出可用变量
version 得到服务器的版本信息
管理mysql还可以用一些带GUI的工具,更直观和方便,比如phpMyAdmin、Sequel Pro、Navicat for MySQL之类的。
最后
现在,Apache、PHP、Mysql环境都已经打通了,开始享受你的PHP之旅吧!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· 展开说说关于C#中ORM框架的用法!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?