Mac 安装PHP、nginx、mysql、sublime text3

安装HomeBrew

BrewMac下面的包管理工具,就像centos下面的yum一样。HomeBrew可以通过ruby来安装,mac系统是自带ruby的,所以只要在终端运行下面的代码即可安装HomeBrew

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

在安装的时候会有下面的提示,你应该仔细看下,要清楚知道HomeBrew给你安装了哪些脚本,给你创建了哪些文件夹,路径是在哪里的。仔细的看下安装时出现的说明信息,这样即使没有用过的软件,你根本不用看文档,都是能够使用它的最基础功能的。如果你一定要研究下细致的,可以看HomeBrew的官网:http://brew.sh

==> This script will install:
/usr/local/bin/brew
/usr/local/share/doc/homebrew
/usr/local/share/man/man1/brew.1
/usr/local/share/zsh/site-functions/_brew
/usr/local/etc/bash_completion.d/brew
/usr/local/Homebrew
==> The following new directories will be created:
/usr/local/Cellar
/usr/local/Homebrew
/usr/local/Frameworks
/usr/local/bin
/usr/local/etc
/usr/local/include
/usr/local/lib
/usr/local/opt
/usr/local/sbin
/usr/local/share
/usr/local/share/zsh
/usr/local/share/zsh/site-functions
/usr/local/var

现在我们已经安装完HomeBrew了,其实你只要运行brew help就能知道该怎么用这个软件了。

自检Brew

安装完成之后,建议执行一下自检,brew doctor如果看到Your system is ready to brew. 那么你的brew已经可以开始使用。

美化下终端

brew我们已经安装好了,现在已经可以使用了,但是看上面的图,我们的终端太他妈的丑了,mac默认使用的shell是bash,如果把它换成zsh,并安装zsh的插件oh-my-zsh,那就会好很多了,mac系统已经自带了zsh,我们就不用去安装了,执行zsh --version可以查看zsh的版本,我们需要安装个zsh的插件oh-my-zsh

安装oh-my-zsh

sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

终端执行上面的代码即可,程序安装完oh-my-zsh后会自动帮我们把shell切换为zsh,现在我们的终端就变成这样了,注:oh-my-zsh还可以更换主题和装插件的,具体访问:http://ohmyz.sh

使用homebrew-cask安装sublime

先安装cask, 使用cask可以安装一些应用程序,如QQ,迅雷,谷歌浏览器等,功能和App stroe差不多,个人觉得这个更好管理

# 网上大部分方法都是用brew tap添加源再安装的,其实不用那么麻烦,只要输入brew cask即可,brew会自动帮我们完成cask安装。
brew cask # 没有安装cask会自动安装,已经安装cask的,会跳出cask命令列表
# Cask 常用命令
brew cask search        #列出所有可以被安装的软件
brew cask search sublime    #查找所有和sublime相关的应用
brew cask list          #列出所有通过cask安装的软件
brew cask info sublime-text  #查看 sublime 的信息
brew cask install sublime-text  # 安装sublime
brew cask uninstall sublime-text   #卸载sublime

通常我们是不知道软件的全称的,比如安装sublime,我们可以先使用brew cask serach搜索:

brew cask search sublime
==> Exact match
caskroom/cask/sublime
==> Partial matches
caskroom/cask/sublime-text               caskroom/cask/sublime-text

从上面我们可以看出,要安装的sublime全称是sublime-text,我们使用brew cask install sublime-text来安装它

brew cask install sublime-text

总体来说,字体和样式都挺不错了,不过大多数人都会换一个自己喜欢的主题的。

给sublime换主题

先给sublime text 3安装Package Control, 按住control + `,在弹出的命令行输入:

import urllib.request,os; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); open(os.path.join(ipp, pf), 'wb').write(urllib.request.urlopen( 'http://sublime.wbond.net/' + pf.replace(' ','%20')).read())

然后点击回车安装

然后command + shift + p,打开Package Control,输入install,选择Package Control:Install Package回车,在跳出的命令行输入选择Material Theme安装,然后按下图启用

好了,然后鼠标移到菜单栏Sublime Text -> Preferences > Settings在右边的窗口(user)中输入你自己要的配置,我的配置如下:

{
    "always_show_minimap_viewport": false,
    "color_scheme": "Packages/Material Theme/schemes/OLD/Material-Theme.tmTheme",
    "font_face": "Fira Code",
    "font_size": 15,
    "ignored_packages":
    [
        "Vintage"
    ],
    "line_padding_bottom": 4,
    "line_padding_top": 4,
    "theme": "Material-Theme.sublime-theme",
    "translate_tabs_to_spaces": true,
    "tab_size": 4,

}

最后来看下效果,嗯,好看多了

brew install nginx

nginx设置开机启动

ln -sfv /usr/local/opt/nginx/*.plist ~/Library/LaunchAgents
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.nginx.plist  加载开启nginx
设置nginx的执行文件权限,这样就可以80端口运行了
sudo chown root:wheel /usr/local/Cellar/nginx/1.13.12/bin/nginx
sudo chmod u+s  /usr/local/Cellar/nginx/1.13.12/bin/nginx
sudo chown -R $USER /usr/local/var/log/nginx/

给nginx设置开机指令别名

mac默认使用的shell是bash,我把bash换成zsh了
vi ~/.zshrc
alias nginx.start='launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.nginx.plist'
alias nginx.stop='launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.nginx.plist'
alias nginx.restart='nginx.stop && nginx.start'
source ~/.zshrc
重启mac终端,测试nginx.start、nginx.stop、nginx.restart命令,本人测试没有问题
安装PHP71
 
  
brew install --without-apache --with-fpm --with-mysql php71
安装php71相关扩展
以前只要执行这个命令就可以安装PHP扩展(brew install php71-xdebug php71-memcached php71-swoole php71-redis php71-pdo-pgsql php71-mcrypt),现在不可以了,由于Homebrew/php在2018年3月底被弃用,并将所有PHP公式转移到Homebrew/core,旧的brew tap homebrew/dupes、brew tap homebrew/versions、brew tap homebrew/homebrew-php都会报以下错误(目前国内百度都找不到解决这个问题的方法)
不推荐用 pecl 的方式安装 PHP 扩展。但是现在没有其他的办法,目前只能使用pecl进行php扩展
php-redis 扩展步骤
此处后期再补
3、PHP添加进开机启动
ln -sfv /usr/local/opt/[email protected]/[email protected] ~/Library/LaunchAgents/   #注:文件名和路径一定要正确,文件和路径必须存在。
 
  

给php设置开机指令别名(将命令行放入文件最后一行)

vi ~/.zshrc
 
   
alias php-fpm.start="launchctl load -w ~/Library/LaunchAgents/[email protected]"  #注:文件名和路径一定要正确,文件和路径必须存在。alias php-fpm.stop="launchctl unload -w ~/Library/LaunchAgents/[email protected]" #注:文件名和路径一定要正确,文件和路径必须存在。
alias php-fpm.restart='php-fpm.stop && php-fpm.start'
source ~/.zshrc重启php-fpm.restart
到这里我们可以访问localhost:80或localhost:8080
会看到welcome ...nginx!
下面简单配置nginx.conf,验证php是否安装成功
worker_processes  1;
events {
    worker_connections  256;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    include servers/*;
}
在nginx/servers(在servers目录下创建一个文件),本人命名为:project.conf
配置project.conf
server {
        listen       80;
        server_name  localhost;
        root   /D/data/project/test;
        index  index.php index.html index.htm;
        location ~ .*\.(php|php7)?$
        {
                fastcgi_pass   127.0.0.1:9000;
                fastcgi_send_timeout 3600s;
                fastcgi_connect_timeout 3600s;
                fastcgi_read_timeout 3600s;
                fastcgi_index  index.php;
                fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
                include   fastcgi_params;
        }
    }
此时已经配置完了,在终端输入 nginx -t 查看语法是否正确,正确的话会显示
 
   

nginx: the configuration file /usr/local/etc/nginx/nginx.conf syntax is ok

nginx: configuration file /usr/local/etc/nginx/nginx.conf test is successful

然后重启nginx nginx.restart

在访问的根目录下创建index.php文件,文件内容<?php phpinfo()

在浏览器地址栏输入localhost/index.php,出现很多配置信息,证明PHP安装成功。

安装mysql

brew install mysql

设置开机启动

ln -sfv /usr/local/opt/[email protected]/homebrew.mxcl.mysql.plist ~/Library/LaunchAgents/

mysql设置别名 (将命令行放入文件最后一行)

vi ~/.zshrc

alias mysql.start="launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist"

alias mysql.stop="launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist"

alias mysql.restart='mysql.stop && mysql.start'

source ~/.zshrc

启动mysql.start或者mysql.restart

启动mysql,然后初始化

mysql_secure_installation

会依次出现下面的各种提示

 
   
New password:                   //给root账号设置一个新密码. 输入密码后回车
Re-enter new password:      //确认刚才的密码
Remove anonymous users? (Press y|Y for Yes, any other key for No) :    //是否删除匿名账号
Success.
Disallow root login remotely? (Press y|Y for Yes, any other key for No) :   //禁止远程登录
Remove test database and access to it? (Press y|Y for Yes, any other key for No) :  //删除test数据库
Reload privilege tables now? (Press y|Y for Yes, any other key for No) :  //立即刷新数据库权限,也就是刚才的设置立即生效初始化后,开始测试是否能够链接成功mysql数据库
mysql测试数据

mysql -uroot -p密码

CREATE DATABASE mdhtest;

use mdhtest;

 
   

CREATE TABLE `vmall_address` (

  `addr_id` int(10) unsigned NOT NULL AUTO_INCREMENT,

  `user_id` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '下单用户',

  `consignee` varchar(60) NOT NULL DEFAULT '' COMMENT '收货人',

  `region_name` varchar(255) DEFAULT NULL COMMENT '地区',

  `address` varchar(255) DEFAULT NULL COMMENT '详细地址',

  `zipcode` varchar(20) DEFAULT NULL COMMENT '邮编',

  `phone_tel` varchar(60) DEFAULT NULL COMMENT '手机',

  `phone_mob` varchar(60) DEFAULT NULL COMMENT '电话',

  `is_default` int(2) DEFAULT '0',

  PRIMARY KEY (`addr_id`),

  KEY `user_id` (`user_id`)

) ENGINE=MyISAM AUTO_INCREMENT=64 DEFAULT CHARSET=utf8;

INSERT INTO `vmall_address` VALUES ('23', '11', 'ff', '北京,北京,东城区', 'af', '101', '15200000100', null, '0');

INSERT INTO `vmall_address` VALUES ('24', '120', '`12`2', '北京,北京,海淀区', '`12`', '2`12`2`1', '13566667777', null, '1');

INSERT INTO `vmall_address` VALUES ('25', '121', '温作权', '北京,北京,东城区', '北京销售中心:西大望路珠江帝景B区西北转角珠光御景销售中心', '3213', '15502154817', null, '1');

验证php nginx mysql 原生代码(如下)因为我们用的是php7.1,所以链接mysql的原函数都废弃了,下面的例子就是最新的mysql函数

<?php

// phpinfo();

$con = mysqli_connect("127.0.0.1","root","w5732341@W");

if (!$con)

{

echo 'shibai';

}else{

mysqli_select_db($con,'mdhtest');

$sql='select * from vmall_address where addr_id=23';

$res=mysqli_query($con,$sql);

$handle=mysqli_fetch_row($res);

echo '<pre>';

var_dump($handle);

}

?>

返回的结果是:

array(9) {
  [0]=>
  string(2) "23"
  [1]=>
  string(2) "11"
  [2]=>
  string(2) "ff"
  [3]=>
  string(23) "北京,北京,东城区"
  [4]=>
  string(2) "af"
  [5]=>
  string(3) "101"
  [6]=>
  string(11) "15200000100"
  [7]=>
  NULL
  [8]=>
  string(1) "0"
}
到这一步所有安装全部完成。
注意:以上所有操作本人全部操作完成。并且测试成功。nginx服务器高级功能配置后期会更新出来。



 
  
 
  

猜你喜欢

转载自blog.csdn.net/weixin_36562804/article/details/80148666
今日推荐