一、配置环境

1 启动APache

Mac系统本身自带Apache,所以可以直接打开。以下为两种方式:

  • 打开“系统设置偏好(System Preferences)” -> “共享(Sharing)” -> “Web共享(Web Sharing)”
  • 打开“终端(terminal)“,然后输入sudo apachectl start,使Apache运行。
    • 开启Apache就是开启Web共享,这时输入“http://localhost”,就可以看到“It works!”的页面
    • Apache默认根目录位于“/Library/WebServer/Documents/”

2 运行PHP

  1. 在终端运行sudo vi /etc/apache2/httpd.conf找到“#LoadModule php5_module libexec/apache2/libphp(数字).so”,去掉前面的#号。
  2. 运行sudo cp /etc/php.ini.default /etc/php.ini,这样就可以通过php.ini来配置各种PHP功能了。
  3. 运行sudo apachectl restart,重启Apache,之后就可以使用。

二、修改PHP默认根目录

  1. 打开文件/private/etc/apache2/httpd.conf找到DocumentRoot修改为自定义路径

在这里插入图片描述

  1. 重启apache服务:sudo apachectl restart

三、问题

1 PHP连接MYSQL 报错"No such file or directory“

原因:因为Mac下默认php.ini配置的default_socket/var/mysql/mysql.socket,而后安装的mysqlsocket文件大多在/tmp/mysql.socket

解决

  1. 进入mysql后 输入status查看UNIX socket:值。
  2. 终端进入/private/etc/php.ini,修改mysqli.default_socketpdo_mysql.default_socket的值为第一步拿到的值。

2 the server requested authentication method unknown to the client

原因:MySQL 8.x中,caching_sha2_password是默认的身份验证插件,而不是以往的mysql_native_password。

解决

进入mysql命令框后执行如下:

use mysql  
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';  
FLUSH PRIVILEGES;  

3 Mysql更改密码时Your password does not satisfy the current policy requirements

原因:新设置密码不符合密码策略

解决

  1. 查看 mysql 初始的密码策略

输入语句SHOW VARIABLES LIKE 'validate_password%'; 进行查看。

  1. 修改validate_password_policy

输入设值语句set global validate_password_policy=LOW;

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐