Mac下搭建Apache+PHP+MySql运行环境

前言

  我们在Mac上搭建Apache+PHP+MySql环境是非常方便的,因为Mac预装的有Apache和PHP,我们可以直接使用。但是稍微费劲一点的是Mac没有预装Mysql,这个需要我们自力更生。好了,废话就不多说了,接下来让我们愉快的学习一下在Mac上怎么搭建Apache+PHP+MySql的运行环境吧^_^

Apache

  首先,让我们来看一下是怎么开启Apache服务

  打开Mac的终端,输入下面一条命令,开启Apache服务(因为sudo是系统管理命令,所以需要输入你的Mac密码):

    

1
sudo apachectl start

   其次,让我们查看一下Apache服务是否开启成功,在浏览器中输入localhost:80(80是默认端口),如果浏览器中显示 It Works!则证明Apache服务开启成功。

  PS:上面也说了 Apache服务端口号 默认是80,如果我想换个端口该怎么办呢,不要捉急,往下看⬇️

    Apache服务的默认安装路径是/etc/apache2,一版情况下/etc目录在Finder下是不可直接找到的,在Finder下使用快捷键 command+shift+g,然后输入/etc 回车,就会看到apache2目录。

        

    找到并打开httpd.conf,搜索Listen80,修改成你想要的端口号即可(注:对配置文件修改过后要一定要重启Apache服务

       

    另外,Apache服务部署路径在 /Library/WebServer/Documents 目录下,使用快捷键command+shift+g后输入/L等待1秒钟后回车,进入Library(资源库),倒数第二个WebSever文件夹下的Documents目录就是Apache服务的部署路径,我们的项目需要放在此目录下

    

    如果想要修改默认部署路径,可以在/etc/apache2目录下找到并打开httpd.conf文件,找到 DocumentRoot ,更改路径即可。

    (详情请参考:https://www.cnblogs.com/xiaovw/p/9843829.html

    

  

    最后,提供几个和Apache服务有关的常用命令。

1
2
3
4
启动Apache服务  sudo apachectl start
重启Apache服务  sudo apachectl restart
停止Apache服务  sudo apachectl stop
查看Apache服务  sudo apachectl -v

  配置PHP   

    因为Mac自带的有PHP,所以我们启动php非常方便,只需要在在Apache服务中配置一下即可直接使用。具体方法如下:

    首先,在/ect/apache2目录下找到并打开httpd.conf文件

    其次,搜索LoadModule php,找到LoadModule php的所在行,把前面的#号去掉,保存后重启Apache服务即可(我的是PHP7,有的人可能是PHP5,没毛病···)。

    最后,让我们在Apache服务的部署路径(/Library/WebServer/Documents)下新建一个index.php测试程序,看一下效果吧。

    这是index.php文件里面的内容。

     

    在浏览器中输入如下网址即可查看到PHP的信息

     http://localhost/info.php 

    

  MySql的安装

    因为Mac没有自带的mysql,所以需要我们去手动安装,在浏览器中输入如下网址课之间进入MySQL的官网下载macOS服务。

     http://dev.mysql.com/downloads/mysql/ 

     

    这个时候执行下面的命令,在终端中查看MySQL的版本信息

     mysql --version 

    会报错,报错信息为: zsh: command not found: mysql ,这是因为该命令默认访问/usr/local/bin/mysql 路径下的mysql,所以我们需要建立一个软连接即可,可以在终端中使用如下命令:

     sudo ln -fs /usr/local/mysql/bin/mysql /usr/local/bin/mysql 

    这个时候再次利用安装MySQL时给出的用户和密码登录MySQL服务,在终端输入如下命令后回车,需要输入MySQL密码:

     mysql -u root -p  

    此时已经进入了MySQL服务,退出的命令为quit(exit也可以)

  

    MySQl服务的启动与停止

    第一种方法:使用终端命令

启动MySQL服务 sudo /usr/local/mysql/support-files/mysql.server start

停止MySQL服务 sudo /usr/local/mysql/support-files/mysql.server stop

    第二种方法:在系统偏好设置中有一个有MySQL选项,可以在这里手动启动与停止MySQL服务,但是我Mac的上MySQL由于版本兼容问题,系统偏好设置的MySQL服务无法加载出来(我的Mac版本为10.13.4)。

    

    安装MySQl图形化管理工具Workbench

    下载网址https://dev.mysql.com/downloads/workbench/

    

    下载完成后安装,安装完成后要建立本地连接(password是MySQl的密码)

    

    最后一步,测试连接,到此为止MySQL图形化管理工具安装并连接本地MySQL成功。

    

参考博文:https://www.cnblogs.com/henusyj-1314/p/6485182.html

一、Apache服务,终端命令
1. 启动 Apache 服务
在终端输入命令:

sudo apachectl start
1
在浏览器中输入如下网址,检查 Apache 服务是否启动成功!

http://localhost

在打开的页面中,如果显示 It works!表示 Apache 服务启动成功。


注意:在启动Apache服务时,会提示输入开机密码(获取管理员权限)。

2. 查看 Apache 版本
在终端输入命令:

sudo apachectl -v

在本机中版本信息如下:

Server version: Apache/2.4.34 (Unix)
Server built: Feb 22 2019 19:30:04
3. 关闭 Apache 服务
在终端输入命令:

sudo apachectl stop
4. 重启 Apache 服务
在终端输入命令:

sudo apachectl restart
二、Apache服务,安装路径
Apache 服务默认安装路径在 /private/etc/apache2/ ,属于系统私有目录,我们不可直接在 Finder 中找到该路径,但我们可以通过以下方式进入该路径:

在终端输入命令 open /etc 进入 etc 文件夹,找到 etc 文件夹下的 apache2 文件夹便是 Apache 服务的安装路径;
在 Finder 中,使用快捷键 command + shift + G 打开 前往文件夹 输入框,输入 /private/etc/apache2 后,点击 前往 到 Apache 服务的安装路径。
三、Apache服务,部署路径
Apache 服务部署路径在 资源库/WebServer/Documents/ ,我们的项目需要放置在该路径下才能正常访问。如果想要修改部署路径,可以在 /private/etc/apache2/ 目录下找到并打开 httpd.conf 文件,搜索 DocumentRoot 修改部署路径。

Mac下修改路径后,部署文件需要使用 chmod 777 文件路径 命令赋予访问权限。

四、Apache服务,端口号
Apache 服务端口号默认为 80,如果想要修改端口号,可以在 /private/etc/apache2/ 目录下找到并打开 httpd.conf 文件,搜索 Listen 80 修改端口号。

五、Apache服务,PHP启动
PHP 启动只需在 Apache 服务中进行一下配置即可直接使用。首先,在 /private/etc/apache2/ 目录下找到并打开 httpd.conf 文件;其次,搜索 #LoadModule php5_module libexec/apache2/libphp5.so ,将前方的 # 删除;再次,重启 Apache 服务即可;最后,在部署路径下新建一个 test.php 测试(如:在浏览器中输入 http://localhost/test.php 查看PHP输出信息)。

六、运行php文件
1. 小白会遇到的情况
在编辑器中创建一个HelloWorld.php文件并保存。(分号不可省略)

<?php
echo "Hello World!";
?>

如果直接在网页中打开此文件,会发现显示的是源码,因为此时php文件并没有在服务器中运行。


参考:https://www.cnblogs.com/cxying93/p/6940845.html

2. 正确运行
启动服务器
sudo apachectl start

点击Finder,然后Command+Shift+G,前往如下路径(mac下Apache服务器的文件路径)
/Library/WebServer/Documents

在http://127.0.0.1(http://localhost)中确认服务器是否成功启动时,其实默认打开的是index.html.en。因此,把HelloWorld.php文件放在该目录下,再在输入网址http://127.0.0.1/HelloWorld.php,便会正确现实php文件内容。

apache

启动apache服务:(Mac系统自带apache服务器)

第一步:启动apache服务:在终端下输入命令 sudo apapchectl start

第二步:查看apache服务版本:sudo apachectl -v

第三步:在浏览器输入网址http://localhost或者 http://127.0.0.1查看服务器是否连接成功

            若成功:显示It works!

其他apache配置:

关闭apache服务:sudo apachectl stop

重启apache服务:sudo apachectl restart

apache服务安装路径:etc/apache2(属于私有目录 在finder上直接看不到,可以在终端上输入cd / 回车 后输入cd etc/apache2可以查看)

apache服务部署路径:Library/Webserver/Documents(我们的项目需要放在该路径下)

                                       注1: 笔者使用Sublime Text软件进行PHP开发,且该软件可以直接打开该配置文件

                                       注2: 如果提示文本锁定不允许修改,可以将该文件复制到其他文件夹修改之后,在粘贴回来覆盖原文件即可

PHP

PHP启动只需要在apache服务中做一些配置就可以启动

输入命令进入etc/apache2中

找到httpd.conf文件,输入命令sudo vim httpd.conf进入编辑

搜索找到#LoadModule php5_module libexec/apache2/libphp5.so 讲前面的‘#’删除

重启apache服务器即可:sudo apachectl restart

测试:在Library/Webserver/Documents目录下建立一个test.php文件进行测试

        后在浏览器中输入:http://localhost/test.php可以看到你写的内容

mysql

安装MySQL:

                 在浏览器中输入网址http://dev.mysql.com/downloads/mysql/进行下载

                下载好后安装完,在终端上输入命令mysql --version查看MySQL下载的版本

                

MySQL的启动与停止:

sudo /usr/local/mysql/support-files/mysql.server start
sudo /usr/local/mysql/support-files/mysql.server stop

在系统偏好设置中启动与停止MySQL服务

在系统偏好设置中有一个MySQL选项,我们可以在这里手动启动与停止MySQL服务

 

 

MySQL可视化管理方式phpMyAdmin:

https://www.phpmyadmin.net/downloads/  phpmyadmin下载

下载完成后:将压缩文件解压到/资源库/WebServer/Documents/路径下,并重命名为phpMyAdmin

再次,将文件夹中的config.sample.inc.php文件重命名为config.inc.php

再次,将config.inc.php文件中的如下代码进行修改:讲 $cfg['Servers'][$i]['host'] = 'localhost';修改为$cfg['Servers'][$i]['host'] = '127.0.0.1';

最后,在浏览器中输入如下网址进行登录即可直接对MySQL进行可视化管理: http://localhost/phpmyadmin/

默认用户名:root

 

安装路径:usr/local/bin/mysql

注:因为在后期登陆phpmyadmin时忘记密码和每一次找回密码后下次在登陆上又会出现密码错误 解决方法:

解决登陆问题:每次密码都不同修改密码

第一步:点击系统偏好设置->最下边点mysql,在弹出的页面中,关闭服务

第二步:进入终端输入:cd/usr/local/mysql/bin

回车后登陆管理员权限:sudo su

./mysqld_safe --skip-grant-tables &重启服务器

第三步:重开一个终端

              新终端下输入  alias mysql=/usr/local/mysql/bin/mysql

            输入mysql进入mysql命令

            use mysql进入mysql数据库

            flush privileges 获取权限

            set password for 'root'@'localhost'=password('新密码');完成修改

原文地址:https://www.cnblogs.com/blogpro/p/13037252.html