Mac搭建PHP环境

  • Post author:
  • Post category:php




一、配置环境



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

,而后安装的

mysql



socket

文件大多在

/tmp/mysql.socket


解决

  1. 进入

    mysql

    后 输入

    status

    查看

    UNIX socket:

    值。
  2. 终端进入

    /private/etc/php.ini

    ,修改

    mysqli.default_socket



    pdo_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;



版权声明:本文为qq_38779672原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。