使用mac下的sublime等编辑器帮助代码编写,然后到linux下运行网页代码。可以通过/vagrant共享目录完成,但是默认apache默认目录为/var/www/html,不想改变该目录,同时为了方便“云管理”,使用git和github统一管理代码。

1. 在github建立新仓库:learn_www,并且添加vagrant下的公钥,公钥使用ssh-keygen产生,并使用git --global user.email "e-mail”以及 git —global user.name “name" 配置git,mac上也做类似配置,这个之前就配置好了。

2. 将github上的仓库拷贝到本地: git clone git@github.com:lozybean/learn_www.git

3. 此时,查看远程仓库git remote,显示origin,正常;

git checkout -b dev,建立dev分支,并切换到该分支;

4. 添加myFirst.php(《细说PHP》书上代码):

 <html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title>my firsy php</title>
</head>
<body>
<?php
$sysos = $_SERVER["SERVER_SOFTWARE"];
$sysversion = PHP_VERSION; //链接并且显示数据库版本
mysql_connect("localhost","root","root");
$mysqlinfo = mysql_get_server_info(); //获取GD库信息
if(function_exists("gd_info")){
$gd = gd_info();
$gdinfo = $gd["GD Version"];
}else{
$gdinfo = "未知";
}
$freetype = $gd["FreeType Support"] ? "支持" : "不支持";
$allowurl = ini_get("allow_url_fopen") ? "支持" : "不支持";
$max_opload = ini_get("file_uploads") ? ini_get("upload_max_filesize") : "Disabled";
$max_ex_time = ini_get("file_uploads")."秒";
date_default_timezone_set("Etc/GMT-8");
$systemtime = date("Y-m-d H:i:s",time());
echo "<table align=center cellspacing=0 cellpadding=0>";
echo "<caption><h2> 系统信息 </h2></caption>";
echo "<tr><td>服务器版本</td><td>$sysos</td> </tr>";
echo "<tr><td>PHP版本</td><td>$sysversion</td> </tr>";
echo "<tr><td>MySQL版本</td><td>$mysqlinfo</td></tr>";
echo "<tr><td>GD库版本</td><td>$gdinfo</td> </tr>";
echo "<tr><td>FreeType</td><td>$freetype</td></tr>";
echo "<tr><td>远程文件获取</td><td>$allowurl</td></tr>";
echo "<tr><td>最大上传限制</td><td>$max_upload</td></tr>";
echo "<tr><td>最大执行时间</td><td>$max_ex_time</td></tr>";
echo "<tr><td>服务器时间</td><td>$systemtime</td></tr>";
echo "</table>";
?>
</body>
</html>

5. git add myFirst.php,添加代码到缓冲区

git commit -m ‘first php’ ,制作版本

git push —set-upstream origin dev ,连接远程分支,并且推送dev分支

git branch -u origin/dev dev,设置关联,之后可以使用git pull同步

git push origin dev, 单纯向远程仓库推送dev分支

6. vagrant登陆到ubuntu,并且在/var/www/html下拷贝远程仓库:git clone git@github.com:lozybean/learn_www.git

7. 访问http://192.168.33.10/learn_www/myFirst.php,显示为空,开始debug,这里有点蛋疼,php感觉和perl挺像的,最近python写的比较多,分号又忘记了,结果脚本里面有个分号写到了标签里面,php语句就少了一个分号,结果一直显示不出来,这里也发现,如果php语句有问题,就算在php之前加一些内容,比如hello什么的,也会显示不出,内心有一点纠结,感觉和解释器逐条解释不太一样,留一个心眼,以后解决。

debug后,在ubuntu上面同样进行git add、git commit、git push等操作。最后显示结果:

第一个php程序就这样有点波折地完成了。

git环境搭建以及第一个PHP程序的更多相关文章

  1. Robot Framework自动化_环境搭建以及第一个用例

    Robot Framework自动化_环境搭建以及第一个脚本 培训老师:肖能尤 2016/06/07 课程目的 一.Robot framework 环境搭建以及第一个脚本 课程内容 1    安装前准 ...

  2. Spark认识&环境搭建&运行第一个Spark程序

    摘要:Spark作为新一代大数据计算引擎,因为内存计算的特性,具有比hadoop更快的计算速度.这里总结下对Spark的认识.虚拟机Spark安装.Spark开发环境搭建及编写第一个scala程序.运 ...

  3. php环境搭建和第一个php程序

    一.开发环境搭建 因为是初学,使用的还是非常经典的组合appserv+dreamweaver cs6; 1.1   appserv安装 appserv的安装还是非常简单的,直接双击可执行程序appse ...

  4. Go语言学习之1 基本概念、环境搭建、第一个Go程序

    一.环境搭建 见我的这篇博客 https://www.cnblogs.com/xuejiale/p/10258244.html 二.golang语言特性1. 垃圾回收    1) 内存自动回收,再也不 ...

  5. React学习笔记-1-什么是react,react环境搭建以及第一个react实例

    什么是react?react的官方网站:https://facebook.github.io/react/下图这个就是就是react的标志,非常巧合的是他和我们的github的编辑器Atom非常相似. ...

  6. lua入门之环境搭建、第一个demo

    前言 前段时间因为有些项目功能需要,自己研究了下lua,今天整理下,并以一个demo为示例演示 手机上的运行效果 分为几个步骤来逐步讲解. 1.lua介绍,为什么选择它? 2.环境安装 3.撸一个简单 ...

  7. Cesium入门2 - Cesium环境搭建及第一个示例程序

    Cesium入门2 - Cesium环境搭建及第一个示例程序 Cesium中文网:http://cesiumcn.org/ | 国内快速访问:http://cesium.coinidea.com/ 验 ...

  8. Flink从入门到放弃(入门篇2)-本地环境搭建&构建第一个Flink应用

    戳更多文章: 1-Flink入门 2-本地环境搭建&构建第一个Flink应用 3-DataSet API 4-DataSteam API 5-集群部署 6-分布式缓存 7-重启策略 8-Fli ...

  9. Conda安装及第一个py程序

    Conda安装及第一个py程序 安装Conda 下载安装 在Anaconda官网下载Anaconda 打开Conda安装程序 设置好安装目录(这个一定要记好,后边要用),比如我的目录就是 D:\Pro ...

随机推荐

  1. CCF-201312-3-最大的矩形

    问题描述 试题编号: 201312-3 试题名称: 最大的矩形 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 在横轴上放了n个相邻的矩形,每个矩形的宽度是1,而第i(1 ≤ ...

  2. UWP 应用程序内购

    今天来说一下应用程序内购的问题,这里面有坑,给自己做个笔记,也给需要的人提个醒. 我目前的需要是可以允许用户捐赠赞助App的形式内购,最终效果如下 只讲上面的列表部分,下面的就是图片布局啥的,没意思了 ...

  3. ZTREE改版 -- 增删减 -- 图标字体化 完整改版

    引言 这次主要更新增删改功能以及修复存在的一些bug:图标能动态改变,回调函数添加 ZTREE改版功能完善 前面文章对于改版过程做了较详细的解释,这里就不多加赘述了,直接看效果图: 增加按钮: 修改节 ...

  4. day1 python基础知识

    一:python发展 python2.6与python3.0区别: 源码不标准,混乱,重复代码过多 二:python所属类型 (1)编译型:一次性将程序全部编译成二进制 优点:运行速度快 缺点:不能跨 ...

  5. Solr6.5.0配置中文分词器配置

    准备工作: solr6.5.0安装成功 1.去官网https://github.com/wks/ik-analyzer下载IK分词器 2.Solr集成IK a)将ik-analyzer-solr6.x ...

  6. QWT与QT Designer

    QWT是一套非常不错的开发库,它能结合QT开发,做出非常好的曲线,刻度,表盘等效果来.  qwt的下载以及动态链接库的编译等这里就不做介绍了.在源码目录下可以找到designer目录,其中有插件的源码 ...

  7. SAP GUI 750 安装包 及 补丁3 共享

    SAP GUI 750 安装包 及 补丁3 共享 链接: https://pan.baidu.com/s/1hstkfUs%20 密码: ggbz -------------------------- ...

  8. 基于winpcap的以太网流量分析器(java)

    开发工具 IDE:eclipse -neon JDK:1.8 OS:Win10-64bit 主要功能 1.要求完成一个基于Winpcap的网络流量统计分析系统,具有易用.美观的界面. 2.完成局域网( ...

  9. 阿里云部署Docker(6)----解决删除&lt;none&gt;镜像问题

    转载请注明来源,本博客原创作者为:http://blog.csdn.net/minimicall?viewmode=contents 在Docker使用中,常常会碰到删除镜像不成功.反而让镜像变成了& ...

  10. hdu 4109 dfs+剪枝优化

    求最久时间即在无环有向图里求最远路径 dfs+剪枝优化 从0节点(自己添加的)出发,0到1~n个节点之间的距离为1.mt[i]表示从0点到第i个节点眼下所得的最长路径 #include<iost ...