MNMP是指Mac+Nginx+MySQL+PHP
- Mac在这里是指Mac系统
- Nginx是一个高性能的HTTP和反向代理服务器
- MySQL是一个小型关系型数据库管理系统。
- PHP是一种在服务器端执行的嵌入HTML文档的脚本语言
安装Homebrew
在Mac下需要一个Homebrew,类似于Ubuntu下的apt-get,通过brew命令,快速安装软件包。
Homebrew网址 brew.sh/index.html
通过以下命令进行安装
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
安装Nginx
brew install nginx
sudo nginx // 启动nginx服务 默认127.0.0.1:8080端口
sudo nginx -s reload|reopen|quit //重新加载|重启|退出
安装PHP
brew update
// 添加三方仓库
brew tap homebrew/dupes
brew tap homebrew/versions
brew tap homebrew/homebrew-php
brew options php70 // 查看安装选项
brew install php70 (--with-x 根据需要在安装选项中选择)
php -v
在命令行中输入如下命令:
sudo vim ~/.bash_profile
然后,在文件的最后加上:
export PATH=/usr/local/php5-7.0.7-20160526-160257/bin:$PATH;
注意: 这是以安装的PHP7.0的路径来配置的,你需要进到/usr/local中查看你所安装的PHP路径。
最后,运行命令:
source ~/.bash_profile
配置完成,再试试 php -v显示的就是最新安装的PHP版本了
在 /usr/local/var/www中添加测试文件测试即可
在nginx和php以及mysql安装成功后,忘记了php-fpm,所以无法访问php,此时在~目录下输入php70-fpm start 有些人会报出命令不存在。这是因为环境变量的问题。 网上很多都是用ln设置软连接的方式,而我选择了更直接了当的方式,去/etc的目录下更改paths文件,添加上你php70-fpm可执行文件的路径即可。 打开php-fpm服务后即可访问php文件。
如果出现File not Found,则将nginx.conf更改如下
再此之前此处的注释应该是全部取消掉的
将fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
替换成fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
location ~ \.php$ {
root html; //更改你的根目录即可
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /$document_root$fastcgi_script_name;
include fastcgi_params;
}
安装MySQL
brew install mysql
输入以下命令进行安全安装
mysql_secure_installation
Enter current password for root (enter for none): //默认没有密码,直接回车即可
> Change the root password? [Y/n] //是否更改root密码,选择是,然后输入并确认密码
> Remove anonymous users? [Y/n] //是否删除匿名用户,选择是
> Disallow root login remotely? [Y/n] //是否禁止远程登录,选择是
> Remove test database and access to it? [Y/n] //是否删除test数据库,选择是
> Reload privilege tables now? [Y/n] //是否重载表格数据,选择是
重置MySQL密码:
mysql.server stop //关闭mysql服务
//然后运行mysqld_safe
./mysqld_safe --skip-grant-tables &
//若提示进程以及存在则使用命令终止进程
ps -A|grep mysql //查看有关进程
kill -9 xxx //xxx表示进程号
此时重复./mysqld_safe --skip-grant-tables & 命令
回车后再输入mysql 进入数据库
直接输入
update mysql.user set authentication_string=password('123456') where user='root' and Host='localhost'
进行更改密码,提示成功后 退出数据库,并重启数据库即可