一、 启动Apache
Mac系统已经集成了Apache环境,我们只需要一行指令就可开启Apache服务。
终端输入 sudo apachectl start
此时在浏览器输入http://localhost
,会出现It works!
二、 运行php
找到Apache的配置文件,终端输入open /etc/apache2/
找到http.conf文件,用文本编辑器打开,搜索 libexec/apache2/libphp5.so 把搜索结果这一行前面的#去掉,保存文件
重启Apache sudo apachectl restart
替换网页文件 open /Library/WebServer/Documents/
复制index.html.en文件并重命名为info.php
打开info.php ,输入你想输入的php代码再次重启Apache,在浏览器输入http://localhost/info.php,就可以看到代码运行结果了。
三、配置httpd.conf
mac下默认的apache默认不开启支持虚拟主机,需要在/private/etc/apache2/httpd.conf中设置,将Include /private/etc/apache2/extra/httpd-vhosts.conf这行前的注释符号#去掉。
修改文档根目录,我的网站程序是放在/Users/chenxin/www下面,修改为DocumentRoot "/Users/chenxin/www"
<Directory "/Users/chenxin/www">
找到LoadModule rewrite_module modules/mod_rewrite.so
将前面”#”去掉,如果不存在则添加上句。
AllowOverride None 将上面的None改为All
四、配置/private/etc/hosts 添加127.0.0.1 lakala.cn
和/private/etc/apache2/extra/httpd-vhosts.conf 添加
<VirtualHost *:80>
ServerAdmin webmaster@lakala.cn
DocumentRoot "/Users/chenxin/www/lakala.cn"
ServerName lakala.cn
ErrorLog "/private/var/log/apache2/lakala.cn-error_log"
CustomLog "/private/var/log/apache2/lakala.cn-access_log" common
</VirtualHost>
另外将localhost配置进去
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot "/Users/chenxin/www"
ServerName localhost
ErrorLog "/private/var/log/apache2/localhost-error_log"
CustomLog "/private/var/log/apache2/localhost-access_log" common
</VirtualHost>
五、安装mysql
在https://dev.mysql.com/downloads/mysql/下载mysql,下载完后双击安装
安装完成后,进入mac终端添加mysql环境变量,方便直接使用mysql命令,在当前用户目录下新建.bash_profile文件,新建命令:touch .bash_profile,然后vim .bash_profile编辑配置文件,添加export PATH=/usr/local/mysql/bin:$PATH环境变量。保存后退出,然后用source命令加载配置文件。最后使用mysql -uroot -p命令,输入密码后进入mysql。
六、安装phpmyadmin
在https://www.phpmyadmin.net/下载phpmyadmin,下载完放入网站目录,运行后报错mysqli_real_connect(): (HY000/2002): No such file or directory,原因是php.ini中配置的mysqli没有与实际的mysql.sock对应正确,命令行登录mysql 通过命令 STATUS 获取mysql.sock路径
其中的UNIX socket后面的值/tmp/mysql.sock就是需要设置的值
在php.ini中配置好mysqli路径。
pdo_mysql.default_socket=/tmp/mysql.sock
mysqli.default_socket=/tmp/mysql.sock
重启apache后再尝试登陆phpmyadmin,又报错 the server requested authentication method unknown to the client
从8.0.11版本起,不再像mysql5.7及以前版本那样,设置用户密码时默认的验证方式为caching_sha2_password,如果发现升级mysql8.0.11后原有的程序不能连接mysql,可迅速在mysql command line client客户端用下面的命令设置成mysql5.7及以前版本的密码验证方式,同时MYSQL8.0.11下修改密码的方式与原先也不大一样,原先的部分修改密码的命令在mysql8.0.11下不能使用。 进入mysql,执行如下命令:
use mysql
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';
FLUSH PRIVILEGES;
此时能登陆进入phpmyadmin了,但首页下面会提示“配置文件现在需要一个短语密码。”,在/Users/chenxin/www/phpmyadmin.cn/libraries/config.default.php中找到$cfg['blowfish_secret'],设置密码为abcdefghijklmnopqrstuvwxyzabcdefgh。另外首页下面还会出现“变量 $cfg['TempDir'] (./tmp/)无法访问。phpMyAdmin无法缓存模板文件,所以会运行缓慢。”,
出现这个的原因是 phpmyadmin的安装目录, tmp目录不存在,或者存在但是权限不对。解决的方法就是没有创建一下这个目录,给予正确的读写权限即可。进入phpmyadmin的安装目录然后执行 mkdir tmp chmod 777 tmp
phpmyadmin 提示的很清楚,这是个缓存目录,可以加快phpmyadmin的运行,即使不理睬这个警告信息,也不会影响程序的执行,就是执行的慢点。不过看上去不舒服。