为什么写这篇文章?

没错,F1ag在无数天的期盼下终于拿到了心仪的MacBook pro 16inch ,于是用了 两天时间配置了他的常用环境,闲言少叙,我们直接从一些基础环境开始。

一切的一切的前提:Homebrew安装

在macos中是没有apt或者yum的,与其相同的是brew指令:

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

这里可能会下载的非常慢,即使你开了全局代理,这是由于代理并不能挂到终端上,要在~/.zshrc里添加一行:

export all_proxy=socks5://127.0.0.1:xxxx #xxxx为你本机代理软件中的端口 

source .zshrc 应用更改

你会发现之后你使用brew install 时都会先更新brew,在~/.zshrc中加入下面这行保存即可:

export HOMEBREW_NO_AUTO_UPDATE=true

梦开始的地方:一些实用的工具和应用

因为在之前f1ag曾经适用过一个月的13寸mbp以及这两天的使用,所以对macos有一定的初步了解,也了解一些实用的软件,这里给大家推荐几款比较实用的软件和工具

一、iTerm2

我觉得这是一款最实用和好看的终端了,在这里给大家看一下经过我的配置的iTerm2:

没错这也是我为什么喜欢iTerm2的原因,他可以自定义背景,具体方法请百度,在这里我们分享几个实用的插件来美化你的iTerm2:

1、安装oh-my-zsh:
github:https://github.com/robbyrussell/oh-my-zsh
官方提供了 curl 和 wget 两种安装方式
curl 安装:
sh -c ``"$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
wget安装:
sh -c ``"$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"
2、配置主题
  • 用 vim 编辑隐藏文件 .zshrc, 终端输入vim ~/.zshrc
  • 找到ZSH_THEME=“xxxxxxx“将zsh主题修改为“agnoster”
  • 应用“agnoster”主题需要特殊的字体支持,否则会出现乱码情况,
    使用 Meslo 字体,点开链接点击 view raw 下载字体

  • 安装字体到系统字体册

  • 在iTerm2中应用字体 iTerm -> Preferences -> Profiles -> Text -> Change Font)

  • 再打开一个窗口即可看到效果
3、自动提示及补全
  1. 克隆仓库到本地 ~/.oh-my-zsh/custom/plugins 路径下
    git clone git://github.com/zsh-users/zsh-autosuggestions $ZSH_CUSTOM/plugins/zsh-autosuggestions

  2. 用 vim 编辑 .zshrc 文件,找到插件设置命令,默认是 plugins=(git) ,我们把它修改为plugins=(zsh-autosuggestions git)

4、语法高亮
  • 使用homebrew包管理工具安装 zsh-syntax-highlighting 插件
    brew install zsh-syntax-highlighting
  • 配置.zshrc文件,插入一行
    source /xxx/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
    (注意: /xxx/ 代表.zshrc所在的路径)
  • 加载.zshrc配置
    source ~/.zshrc
5、一个动态的很高端的插件

但我觉得他没什么卵用(雾

我们先来看下效果:

虽然看起来很高级,但是真正使用时可能会对体验有很大的影响,所以各位按自己的需求取用(

安装步骤:

  1. 官网下载插件到本地
  2. 把下载下来的插件移动到~/.oh-my-zsh/plugins/下
  3. 赋予文件777权限 chmod 777 ~/.oh-my-zsh/plugins/incr-0.2.zsh
  4. 在~/.zshrc中加入source ~/.oh-my-zsh/plugins/incr-0.2.zsh,保存退出
  5. source ~/.zshrc更新配置文件

二、Alfred4

这是一款什么样的软件呢,我们看一下他能干什么呢

因为我的也是从室友那里airdrop过来的,所以想用的小伙伴还请百度下载

其余的类似虚拟机ide一类的软件我就不给大家推荐了,大家可取所需就好,我们下面进入正题:

Java环境配置:

对于Mac OS用户来说,最大的福利莫过于它不需要像windows一样配置环境变量,安装jdk只需要到Java官网下载对应的jdk然后一路同意就可以成功配置Java环境,一般情况不会踩坑,我们就不在这里赘述

Python环境配置:

Mac OS自带了python2环境,如果想使用python3环境的话我们在终端输入python3回车就会提示一键式安装好python3环境,至尊体验,因此不在这里赘述

PHP+httpd环境配置:

我写这篇文章的唯一目的就是这一块了吧,配置这个环境算上之前的13寸mbp应该花费了我大概四天以上的时间,给大家感受下我查的资料的数量(大概是这张图的三倍以上),期间非常感谢Quincy师傅的帮助:

首先可能很多读者发现其实Mac OS是自带了apache环境的,那么为什么我们还要单独配一个http呢,原因很简单,我用了三天多的时间都没搞定这个系统自带的apache的权限问题,启动之后你会发现根目录可以访问,但你自己在根目录下再建一个目录之后,你就开始了apache的403之旅。不管你怎么修改配置文件,目录权限,apache用户都没有任何办法跳过这个403。于是在询问了多个以及有很长时间mac使用经验的师傅之后,我得到了一个很统一的答复:不要用系统自带的apache。

那么我们如何在mac里自己安装一个httpd环境呢?

Step1 前置工作:
首先我们要做一些前置准备:

1. XCode Command Line Tools

如果没有安装使用如下命令安装:

xcode-select --install

2. 给brew添加php包

brew tap exolnet/homebrew-deprecated

Step2 安装 Httpd:

由于mac系统内置apache,所以我们需要先停止正在运行的apache服务,并停止所有自动加载的脚本

sudo apachectl stop
sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist 2>/dev/null
brew install httpd

安装之后我们要对httpd进行一些配置让其能够正常启动:

sudo brew services start httpd

此时apache服务已经启动,通过访问http://localhost:8080可以看到apache标志的 It works! 但这一切才刚刚开始

Step3 配置 httpd.conf

由于brew安装的httpd默认的监听端口为8080需要我们手动修改为80,所以我们打开httpd.conf编辑配置文件:

vim usr/local/etc/httpd/httpd.conf

注:上述目录为默认安装目录,如果你的httpd.conf并不在这个目录可以使用find . -name "httpd.conf" 查找具体位置

在文件中搜索 Listen 8080 改为 Listen 80

注:在vim中搜索的方式为/+要搜索的字符串

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
注意,这里libphp5.so以及libphp7.so可能并不是笔者的目录,所以建议读者自行使用find指令搜索目录,并改为相应目录。
因为每次只能加载一个php,所以我们注释掉后面两个,修改后apach将使用PHP5.6解析.php文件。
你也必须明确地设置PHP的目录索引,所以搜索这个块:

    DirectoryIndex index.html

并用此替换它:


    DirectoryIndex index.php index.html



    SetHandler application/x-httpd-php
保存文件并重启apache服务
sudo apachectl -k stop
sudo apachectl start

这时我们会发现会出现以下报错:

于是就进入了死局,在笔者用了数小时搜索资料解决了问题之后,Quincy师傅发现brew在不久前修改了使用brew安装的openssl:

也就是说由于PHP5.6并不被继续支持,brew官方去掉了openssl1.0.2的部分,导致php5.6并不能正确的加载链接库,但在php7.0,php7.1时就不会产生这个错误。

这里我们采用手动安装openssl1.0.2的方法来解决这个问题

1、下载openssl:

https://www.openssl.org/source/openssl-1.0.2l.tar.gz使用链接下载openssl1.0.2到本地解压后在终端跳转到解压后的文件夹

2、编译openssl

使用以下命令编译安装openssl

./Configure darwin64-x86_64-cc --prefix=/usr/local shared zlib
make
make install

安装后再执行命令使apache重启即可:

sudo apachectl -k stop

sudo apachectl start

Step 4 使用sphp切换PHP版本

我们将安装 sphp 脚本来切换PHP版本:
curl -L https://gist.github.com/w00fz/142b6b19750ea6979137b963df959d11/raw > /usr/local/bin/sphp
chmod +x /usr/local/bin/sphp

 如果你下载不下来这个文件,也可以通过笔者的百度云分享下载,之后放入/usr/local/bin/sphpm目录:

链接:https://pan.baidu.com/s/1iO289DMGOW1FRGOuJ-U4HA 密码:k5j5

之后你需要在~/.zshrc中添加这行代码:

export PATH=/usr/local/bin:/usr/local/sbin:$PATH

source ~/.zshrc

尝试sphp 7.1即可切换PHP版本:

 

 后记:

买前:我必然不会买1T硬盘的
买后:真香

参考文章:
https://bbs.xdsec.org/d/251-macos-homebrew-php-macos-high-sierra
https://bbs.xdsec.org/d/148-macos-apache-php-mysql-php
https://www.jianshu.com/p/95f68e035f33
https://www.cnblogs.com/blackhumour2018/p/9401765.html
https://www.skiy.net/201605154042.html
https://getgrav.org/blog/macos-catalina-apache-multiple-php-versions
https://www.jianshu.com/p/892bd2a7936a
https://blog.csdn.net/yf9595/article/details/79843317


人们还能笑的时候,是不容易被打败的。