三篇文章带你极速入门php(二)之迅速搭建php环境
前言
今天讲一下php在windows,mac,linux上的集成环境搭建,目标是简单快速,环境这个事得对号入座,windows用phpstudy,mac用mamp,linux用lnmp一键安装,直接跳转对应的地方看就好了。
另:本文目标是迅速建立集成环境用来开发,如果想要分开一点点搭建,自行google百度就好了。
windows之phpstudy
windows推荐直接phpsudy,简单方便,一键式安装。
下载地址 http://phpstudy.php.cn/
下载完是一个压缩包,解压选目录安装一条龙麻溜搞完,双击打开。
刚打开mysql和apache还没有启动,点击启动。

点击phpmyadmin,可以打开本地mysql的一个管理界面,密码root
phpmyadmin进去后长这个样子,可以建个test库试试

好了,回到phpstudy,点击其他选项->MyHomePage,应该会跳到浏览器上,然后是这么个页面,那就说明环境已经没问题了。

打开网站根目录,修改index.php(下个软件),修改echo 后的字符串为hello php,保存,刷新页面,发现页面上变成了Hello PHP字样,成功。
MAC之mamp
先贴个下载地址 https://www.mamp.info/en/ ,古人云:不下载,你学它怎么用干嘛。
安装好打开界面,点击start server,这个样子就说明没问题

然后把它关了(表打我,先试试嘛,先看到这里的童鞋可以先不用打开),去右上角点开首选项Preferences,咱们修改一下配置。你说找不到?在这里↓

打开以后有6个栏目,首先修改第二个Ports,把nginx的端口改为80(如果要用apache服务器,就把apache改为80),然后第四个web server可以选择使用nginx或者apache,第三个PHP可以使用默认的php7.1,点击OK保存,再次点击mamp的start servers。

现在环境就算是有了,打开浏览器,输入 http://localhost/phpmyadmin/ 就可以进入phpmyadmin查看本机的mysql了(上一步没有改端口的同学,加上默认的8888端口 http://localhost:8888/phpmyadmin/ )。
打开本机的这个目录 /Applications/MAMP/conf/nginx ,就可以修改nginx配置了,本文不过多讲述,附一下我的一个简单的配置:
- 修改nginx.conf 配置,添加在和server同级的地方(就是server后边跟了两个大括号,括起了挺多东西,你找到它的右括号,然后下一行),
include conf.d/*.conf;,保存退出就好了。 - 在和nginx.conf同级目录下新建conf.d文件夹,进去创建一个test.cn.conf(必须以.conf结尾),内容如下。
- nginx配置文件需要注意的地方:
- 端口刚才如果没有修改就改为8888
- server_name是你定的一地址,最好和配置文件名一样
- root是你的项目地址,默认去访问一个index.php文件
- fastcgi不是用9000端口了,用的是一个unix socket
server {
listen 80;
server_name test.cn;
root /Applications/MAMP/htdocs/test/;
charset utf-8;
location / {
index index.php index.html index.htm;
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php?s=$1 last;
break;
}
}
location ~ .+\.php($|/) {
index index.php;
fastcgi_index index.php;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/Applications/MAMP/Library/logs/fastcgi/nginxFastCGI.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
access_log /Applications/MAMP/logs/test.access.log;
error_log /Applications/MAMP/logs/test.error.log;
}
不好意思,改完配置文件又要重启啦ヾ(≧▽≦*)o
去你刚才设定的项目地址新建一个index.php,echo一个helloworld,在本地hosts文件中 添加一个 127.0.0.1 test.cn 就可以了,相信你可以的,我就不演示啦<( ̄ˇ ̄)/
lnmp一键安装
lnmp一键安装官网 https://lnmp.org/install.html
开发环境搭建是在windows或者mac上搭建一个virtualbox+vagrant虚拟机,然后在虚拟机里安装环境,在本地开发,自动同步到共享文件夹里,在虚拟机中运行。本质上是使用linux环境。linux的童鞋可以直接lnmp安装。
用vagrant的好处是可以打包带走,团队协作或者换个机器都可以把环境打包好,一处打包到处使用。(本文不赘述,自行google百度就完事了)
- virtualbox下载地址 https://www.virtualbox.org/wiki/Downloads ,选中mac或者windows版即可,下载完后安装上就好。
- vagrant下载地址 https://www.vagrantup.com/downloads.html 也是选择对应系统然后下载安装就好
- 安装centos7的box,从官网下太慢,这里贴一个别人上传的百度云链接 https://pan.baidu.com/s/1DIis9g8JoyXMJvkkWkiL8A ,创建一个专门的文件夹,下载下来放到这个文件夹里,进入这个文件夹,然后开始执行命令
vagrant box add -name 'centos-7' [box放置的位置]
把这个镜像添加到自己本机的vagrant列表里。vagrant box list查看刚才的box是否添加上vagrant init centos-7会在当前文件夹下创建一个以centos-7为镜像的vagrant文件,名字叫Vagrantfile- 打开Vagrantfile文件,修改这一行,
config.vm.synced_folder "./share", "/share"这样你当前目录下的share文件夹就会映射到和虚拟机中的/share目录,注意,本地的share得先创建好 - 等待Vagrantfile创建好之后,运行
vagrant up,根据这个文件创建一个虚拟机 - 创建好以后
vagrant ssh连接进入虚拟机。 - 进入虚拟机后,先
yum update把yum源更新一下,然后安装一下wgetyum install wget。
最后一步,一条命令安装lnmp环境或者lamp,只需修改最后的参数即可
- wget http://soft.vpser.net/lnmp/lnmp1.5.tar.gz -cO lnmp1.5.tar.gz && tar zxf lnmp1.5.tar.gz && cd lnmp1.5 && ./install.sh lnmp
- 根据提示选择php,mysql,nginx的版本,可以直接全程回车,用默认项就好。具体问题参照lnmp官网,讲的远比我详细,其中,nginx和php的安装环境都在 /usr/local 下
最后,附vagrant常用命令:
vagrant box add [box文件] 添加一个box
vagrant box list 查看本机已经添加的box列表
vagrant init [boxname] 初始化一个vagrant文件
vagrant up 启动vagrant
vagrant reload 重载
vagrant halt 终止当前目录下的vagrant虚拟机
vagrant ssh 连接当前虚拟机
三篇文章带你极速入门php(二)之迅速搭建php环境的更多相关文章
- 三篇文章带你极速入门php(三)之php原生实现登陆注册
看下成果 ps:纯天然h5,绝不添加任何添加剂(css)以及化学成分(js)(<( ̄ ﹌  ̄)我就是喜欢纯天然,不接受任何反驳) 关于本文 用原生的php和html做了一个登陆注册,大概是可以窥 ...
- 三篇文章带你极速入门php(一)之语法
本文适合阅读用户 有其他语言基础的童鞋 看完w3cschool语法教程来回顾一下的童鞋(传送门,想全面看一下php语法推荐这里) 毫无基础然而天资聪慧颇有慧根(不要左顾右看说的就是你,老夫这里有一本& ...
- 三篇文章了解 TiDB 技术内幕 —— 谈调度
任何一个复杂的系统,用户感知到的都只是冰山一角,数据库也不例外. 前两篇文章介绍了 TiKV.TiDB 的基本概念以及一些核心功能的实现原理,这两个组件一个负责 KV 存储,一个负责 SQL 引擎,都 ...
- 三篇文章了解 TiDB 技术内幕 - 说存储(转)
引言 数据库.操作系统和编译器并称为三大系统,可以说是整个计算机软件的基石.其中数据库更靠近应用层,是很多业务的支撑.这一领域经过了几十年的发展,不断的有新的进展. 很多人用过数据库,但是很少有人实现 ...
- jq最新前三篇文章高亮显示
/*---------最新前三篇文章高亮显示-------------*/ function latest(){ var color_arr=new Array( "blue", ...
- 两篇文章带你走入.NET Core 世界:Kestrel+Nginx+Supervisor 部署上云服务器(二)
背景: 上一篇:两篇文章带你走入.NET Core 世界:CentOS+Kestrel+Ngnix 虚拟机先走一遍(一) 已经交待了背景,这篇就省下背景了,这是第二篇文章了,看完就木有下篇了. 直接进 ...
- 三篇文章了解 TiDB 技术内幕——说计算
在这我们将关系模型简单理解为 Table 和 SQL 语句,那么问题变为如何在 KV 结构上保存 Table 以及如何在 KV 结构上运行 SQL 语句. 假设我们有这样一个表的定义: CREATE ...
- TIDB4 —— 三篇文章了解 TiDB 技术内幕 - 谈调度
原文地址:https://pingcap.com/blog-cn/tidb-internal-3/ 为什么要进行调度 先回忆一下第一篇文章提到的一些信息,TiKV 集群是 TiDB 数据库的分布式 K ...
- 第三篇——第二部分——第四文 配置SQL Server镜像——非域环境
原文:第三篇--第二部分--第四文 配置SQL Server镜像--非域环境 本文为非域环境搭建镜像演示,对于域环境搭建,可参照上文:http://blog.csdn.net/dba_huangzj/ ...
随机推荐
- iOS视频开发经验
iOS视频开发经验 手机比PC的优势除了便携外,我认为最重要的就是可以快速方便的创作多媒体作品.照片分享,语音输入,视频录制,地理位置.一个成功的手机APP从产品形态上都有这其中的一项或多项,比如in ...
- ubuntu cron 及 crontab 自动执行任务
Add the below line (with tweaks) to the end of /etc/crontab: 30 23 * * * root shutdown -h now At 23: ...
- ES系列十四、ES聚合分析(聚合分析简介、指标聚合、桶聚合)
一.聚合分析简介 1. ES聚合分析是什么? 聚合分析是数据库中重要的功能特性,完成对一个查询的数据集中数据的聚合计算,如:找出某字段(或计算表达式的结果)的最大值.最小值,计算和.平均值等.ES作为 ...
- HTML学习笔记05-文本格式化
HTML格式化标签 HTML使用标签<b>与<i>对输出的文本进行格式,如:粗体or斜体 这些HTML标签称为格式化标签 <!DOCTYPE HTML> <h ...
- opencv学习笔记(九)Mat 访问图像像素的值
对图像的像素进行访问,可以实现空间增强,反色,大部分图像特效系列都是基于像素操作的.图像容器Mat是一个矩阵的形式,一般情况下是二维的.单通道灰度图一般存放的是<uchar>类型,其数据存 ...
- vuejs初学入门环境搭建
一.Nodejs: 1.安装下载:http://nodejs.cn/download/ 2.Node.js安装配置: http://www.runoob.com/nodejs/nodejs ...
- 018_nginx_proxy死循环问题
今天线上遇到一个请求一次,触发多次的请求,而且直接把nginx机器压垮了.经排查,经过如下: 一. server{ server www.jyall.com; location /latestrele ...
- zabbix3.0.4关于java服务端程序内存溢出的处理
关于java服务端程序内存溢出的处理 java服务端程序内存溢出会产生jvm.log文件,此时程序会挂掉,无法正常处理业务,需要重启服务 思路: 当存在jvm.log这个文件的时候则触发clean_j ...
- linux块设备驱动
块设备驱动程序<1>.块设备和字符设备的区别1.读取数据的单元不同,块设备读写数据的基本单元是块,字符设备的基本单元是字节.2.块设备可以随机访问,字符设备只能顺序访问. 块设备的访问:当 ...
- ocp linux 基础要点
基本命令: 创建/修改/删除用户 useradd/usermod/userdel 创建/修改/删除用户组 groupadd/groupmod/groupdel 修改所属用户/所属用户 ...