命令:
sudo rm /usr/local/mysql
sudo rm -rf /usr/local/mysql*
sudo rm -rf /Library/StartupItems/MySQLCOM
sudo rm -rf /Library/PreferencePanes/My*
vim /etc/hostconfig

执行完上面命令后使用的是Vim指令,复制上述命令,保存,退出即可。

继续完成下列指令:

[plain] view plain copy
rm -rf ~/Library/PreferencePanes/My*
sudo rm -rf /Library/Receipts/mysql*
sudo rm -rf /Library/Receipts/MySQL*
sudo rm -rf /var/db/receipts/com.mysql.*

最后打开系统偏好设置,最下方MySQL图标消失。

XCode命令行工具

如果您还没有安装XCode,最好先安装命令行工具,因为这些工具将被自制软件使用:
xcode-select --install

安装 Homebrew
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

版本查看
brew --version

安装检测
brew doctor

Apache安装

内置的Apache,则需要先关闭它
sudo apachectl stop
sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist 2>/dev/null

安装Brew提供的新版本:
brew install httpd

如果没有选项,httpd将不需要从源代码构建,因此安装速度非常快。完成后,您应该看到如下消息:
/usr/local/Cellar/httpd/2.4.33: 1,633 files, 26.4MB

Apache服务器自动启动
sudo brew services start httpd

您现在已经安装了Homebrew的Apache,并将其配置为使用特权帐户自动启动。它应该已经在运行,所以你可以尝试通过指向它在浏览器中访问你的服务器http://localhost:8080,你应该看到一个简单的标题,上面写着“It works!” 。

Apache是​​通过控制 apachectl 命令,以便使用一些有用的命令是:

sudo apachectl start
sudo apachectl stop
sudo apachectl -k restart

该 -k将立即强制重新启动,而不是在apache很好并准备好时要求礼貌地重新启动

Apache配置

编辑Apache的配置文件
/usr/local/etc/httpd/httpd.conf

open -e /usr/local/etc/httpd/httpd.conf

找到说的那一行
Listen 8080
并将其更改为 80:
Listen 80

更改Apache 的文档根目录
DocumentRoot "/usr/local/var/www"

将其更改为指向您的用户目录所在的位置 your_user 是您的用户帐户的名称:
DocumentRoot /Users/your_user/Sites

您还需要更改 <Directory>DocumentRoot行下面的标记引用。这也应该改为指向你的新文档根目录:
<Directory /Users/your_user/Sites>

在这一点上 <Directory> 块你会发现一个 AllowOverride 设置,这应该改变如下:

# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
# AllowOverride FileInfo AuthConfig Limit
#
AllowOverride All

此外,我们现在应该启用默认情况下注释掉的mod_rewrite。搜索mod_rewrite.so 并通过删除前导来取消注释 #:
LoadModule rewrite_module lib/httpd/modules/mod_rewrite.so

用户和组
User your_user
Group staff

#ServerName www.example.com:8080
并将其替换为:
ServerName localhost

PHP安装

brew install php@5.6
brew install php@7.0
brew install php@7.1
brew install php@7.2

每个PHP版本的文件位于以下目录中
/usr/local/etc/php/5.6/php.ini
/usr/local/etc/php/7.0/php.ini
/usr/local/etc/php/7.1/php.ini
/usr/local/etc/php/7.2/php.ini

切换回第一个PHP版本:
brew unlink php@7.2 && brew link --force --overwrite php@5.6

LoadModule rewrite_module lib/httpd/modules/mod_rewrite.so
在下面添加以下内容 libphp 模块:
LoadModule php5_module /usr/local/opt/php@5.6/lib/httpd/modules/libphp5.so
#LoadModule php7_module /usr/local/opt/php@7.0/lib/httpd/modules/libphp7.so
#LoadModule php7_module /usr/local/opt/php@7.1/lib/httpd/modules/libphp7.so
#LoadModule php7_module /usr/local/opt/php@7.2/lib/httpd/modules/libphp7.so

设置PHP的目录索引
<IfModule dir_module>
DirectoryIndex index.html
</IfModule>
并用下面的代替它:

<IfModule dir_module>
DirectoryIndex index.php index.html
</IfModule>

<FilesMatch \.php$>
SetHandler application/x-httpd-php
</FilesMatch>

保存文件并停止Apache然后重新启动,现在我们已经安装了PHP:
sudo apachectl -k stop
sudo apachectl start

PHP切换器脚本

curl -L https://gist.githubusercontent.com/rhukster/f4c04f1bf59e0b74e335ee5d186a98e2/raw > /usr/local/bin/sphp

chmod +x /usr/local/bin/sphp

检查你的路径
echo $PATH

看到如下内容
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

测试PHP切换

完成这些步骤后,您应该能够使用该命令切换您的PHP版本 sphp 后面是PHP版本的两位数值:
sphp 7.0

mysql安装
下载地址:http://dev.mysql.com/downloads/mysql/

安装好后,在macos中的系统偏好设置会有mysql的图标,这时候我们点击,然后启动mysql就可以了

配置mysql
cd ; vim .bash_profile

#点击i进入编辑模式加入下边的代码
export PATH="/usr/local/mysql/bin:$PATH"

#保存退出,执行如下命令
source ~/.bash_profile

Mysql -uroot -p

set password for root@localhost = password('123456');

macOS 10.13 High Sierra PHP开发环境配置的更多相关文章

  1. macOS 10.13 High Sierra odoo11 开发配置--完整版

    1.抹盘安装macOS Sierra 10.13: 制作macOS安装启动盘参见:http://www.iplaysoft.com/macos-usb-install-drive.html 2.安装g ...

  2. macOS 10.13 安装Virtualbox失败

    macOS 10.13 安装Virtualbox失败 Enviroment macOS: 10.13 High Sierra virtualBox: 5.1.28 Problem descriptio ...

  3. 10分钟学会搭建Android开发环境 Eclipse: The import android.support cannot be resolved

    10分钟学会搭建Android开发环境_隋雨辰 http://v.youku.com/v_show/id_XNTE2OTI5Njg0.html?from=s1.8-1-1.2 The import a ...

  4. macOS 10.13允许任何来源开启方法

    软件下载网站: http://www.pc6.com/ 软件安装问题: macOS 10.13允许任何来源开启方法: 如果需要恢复允许“任何来源”的选项,即关闭系统的Gatekeeper,我们可以在“ ...

  5. mac电脑使用,开发环境配置指南

    mac电脑使用,开发环境配置指南 前端工具链,mac下都很好用 用brew来装软件 用brew cask来装应用 Introduction · macOS Setup Guidehttp://sour ...

  6. Tensorflow开发环境配置及其基本概念

    Tensorflow开发环境配置及其基本概念 1.1. 安装Tensorflow开发环境 1.1.1. 安装pycharm 1.1.2. 安装pythe3.6 1.1.3. 安装Tensorflow ...

  7. Linux odoo开发环境配置

    Linux odoo开发环境配置 安装postgresql9.6 第1步:添加RPM源(通过官网获取下载地址) yum install https://download.postgresql.org/ ...

  8. windows eclipse直接访问远程linux hadoop开发环境配置(符合实际开发的做法)

    CDH 5.x搭建请参考CentOS 7离线安装CDH 5.16.1完全指南(含各种错误处理). 如果使用的是cloudera quickstart vm,则只能在linux服务器中使用eclipse ...

  9. Centos Android开发环境配置-Android Tools -android list sdk --extended --all

    Centos Android开发环境配置-Android Tools -android  list sdk --extended --all 安装完Android Tools后执行 android   ...

随机推荐

  1. 使用ViewPager实现Tab

    一.效果演示及分析 我们直接看两幅图.如下:                   上两幅图实现的效果就是: (1)手指左右滑动时,中间的布局呈现不同的效果.而且下面的按钮也会做相应的改变. (2)我们 ...

  2. ASP.NET Web API编程——版本控制

    版本控制   版本控制的方法有很多,这里提供一种将Odata与普通web api版本控制机制统一的方法,但也可以单独控制,整合控制与单独控制主要的不同是:整合控制通过VersionController ...

  3. 面试准备——(三)Selenium面试题总结

    一.Selenium基本知识 1. 什么是Selenium? Selenium是浏览器自动化工具,主要用来Web的自动化测试,以及基于Web的任务管理自动化.它支持的语言有:python.Java.r ...

  4. Windows 下制作CentOS7安装U盘

    本文属于另类的U盘制作方法(更多U盘安装见U盘安装CentOS ),如何安装CentOS,请参考<安装指南> 以下列出了,完整的制作步骤: 1.下载安装镜像 选择一个合适的镜像网站,比如网 ...

  5. Linux脚本开头#!/bin/bash和#!/bin/sh是什么意思以及区别

    一.意思 #!/bin/sh是指此脚本使用/bin/sh来解释执行,#!是特殊的表示符,其后面根的是此解释此脚本的shell的路径. 其实第一句的#!是对脚本的解释器程序路径,脚本的内容是由解释器解释 ...

  6. 解决pycharm无法导入本地包的问题

    在用python写爬虫程序时,import 行无法通过,具体情况如下: pycharm运行程序后,程序pass了,但是出现了警告,如下图所示: 这是由于该程序不在根目录下,无法导入本地包,解决办法如下 ...

  7. 关于JS的clone()函数编写的一些问题

    问题讲述:用js 实现一个clone()克隆函数,该函数会把输入进去的不同类型值Number,String,Undefined,Boolean,Function,Null,Object,Array,R ...

  8. 学习笔记:IDEA、原生ajax的三道练习题、Markdown

    前言 该从何说起呢?想写博客好久了,正好这个学期课很少(大三),可以静下心来写点东西(虽然事情依旧很多),总感觉记录和分享是一件很酷的事情.第一篇博客,第一次使用Markdown写博客,第一次使用ID ...

  9. JSON.stringify()和JSON.parse()的区别

    JSON.stringify()此方法用于将一个对象解析成字符串并返回. JSON.parse()此方法刚好相反是将一个字符串对象解析成一个JSON对象.

  10. Linux中文件函数(一)

    一.stat.fstat.fstatat.lstat函数 函数的原型为: #include <sys/stat.h> int stat(const char *restrict pathn ...