git环境搭建以及第一个PHP程序
使用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程序的更多相关文章
- Robot Framework自动化_环境搭建以及第一个用例
Robot Framework自动化_环境搭建以及第一个脚本 培训老师:肖能尤 2016/06/07 课程目的 一.Robot framework 环境搭建以及第一个脚本 课程内容 1 安装前准 ...
- Spark认识&环境搭建&运行第一个Spark程序
摘要:Spark作为新一代大数据计算引擎,因为内存计算的特性,具有比hadoop更快的计算速度.这里总结下对Spark的认识.虚拟机Spark安装.Spark开发环境搭建及编写第一个scala程序.运 ...
- php环境搭建和第一个php程序
一.开发环境搭建 因为是初学,使用的还是非常经典的组合appserv+dreamweaver cs6; 1.1 appserv安装 appserv的安装还是非常简单的,直接双击可执行程序appse ...
- Go语言学习之1 基本概念、环境搭建、第一个Go程序
一.环境搭建 见我的这篇博客 https://www.cnblogs.com/xuejiale/p/10258244.html 二.golang语言特性1. 垃圾回收 1) 内存自动回收,再也不 ...
- React学习笔记-1-什么是react,react环境搭建以及第一个react实例
什么是react?react的官方网站:https://facebook.github.io/react/下图这个就是就是react的标志,非常巧合的是他和我们的github的编辑器Atom非常相似. ...
- lua入门之环境搭建、第一个demo
前言 前段时间因为有些项目功能需要,自己研究了下lua,今天整理下,并以一个demo为示例演示 手机上的运行效果 分为几个步骤来逐步讲解. 1.lua介绍,为什么选择它? 2.环境安装 3.撸一个简单 ...
- Cesium入门2 - Cesium环境搭建及第一个示例程序
Cesium入门2 - Cesium环境搭建及第一个示例程序 Cesium中文网:http://cesiumcn.org/ | 国内快速访问:http://cesium.coinidea.com/ 验 ...
- Flink从入门到放弃(入门篇2)-本地环境搭建&构建第一个Flink应用
戳更多文章: 1-Flink入门 2-本地环境搭建&构建第一个Flink应用 3-DataSet API 4-DataSteam API 5-集群部署 6-分布式缓存 7-重启策略 8-Fli ...
- Conda安装及第一个py程序
Conda安装及第一个py程序 安装Conda 下载安装 在Anaconda官网下载Anaconda 打开Conda安装程序 设置好安装目录(这个一定要记好,后边要用),比如我的目录就是 D:\Pro ...
随机推荐
- Web 动画帧率(FPS)计算
我们知道,动画其实是由一帧一帧的图像构成的.有 Web 动画那么就会存在该动画在播放运行时的帧率.而帧率在不同设备不同情况下又是不一样的. 有的时候,一些复杂或者重要动画,我们需要实时监控它们的帧率, ...
- Redis的简单使用和介绍
1.什么是NoSQL NoSQL = Not Only SQL 非关系型的数据库 2. 为什么需要NoSQL High performance 高并发读写 ...
- Oracle的导入导出 DMP 文件
普通 导入: 将数据库完全导入,用户名userName 密码PassWord导入文件位置 E:\work\dmp\xxxxx.dmp (注意:导入的用户必须要跟导出时候的用户一致) imp userN ...
- Nginx限速模块初探
Nginx限速模块分为哪几种?按请求速率限速的burst和nodelay参数是什么意思?漏桶算法和令牌桶算法究竟有什么不同?本文将带你一探究竟.我们会通过一些简单的示例展示Nginx限速模块是如何工作 ...
- VMware---添加esxi主机的实验
实验环境:window_server_2012_r2_64 SQLServer2012SP1-FullSlipstream-CHS-x64 虚机配置: 关于windows server2012 和 ...
- MySQL 索引管理与执行计划
1.1 索引的介绍 索引是对数据库表中一列或多列的值进行排序的一种结构,使用索引可快速访问数据库表中的特定信息.如果想按特定职员的姓来查找他或她,则与在表中搜索所有的行相比,索引有助于更快地获取信息. ...
- Android后台执行的定时器实现
Android后台运行定时器,方便我们运行定位跟踪等任务需求. 以下简要说明实现Android后台定时器的要点, 文章末尾能够下载到project代码,可直接编译运行. AndroidManifest ...
- Mongodb 3.4 + Centos6.5 配置 + mysql.sql转为csv 或 json导入和导出Mongo (64位系统)
Centos下通过yum安装步骤如下: 声明:相对比那些用源码安装,少了配置和新建log和data目录,这种简单粗暴, ,创建仓库文件, vi /etc/yum.repos.d/mongodb-org ...
- CI环境配置
CI:php的MVC框架M(模型model):与数据库打交道的,一般情况下数据库里面的一张表对应一个Model,在里面对应该表的增删改查的操作V(视图view):用户看到的界面,其中很多数据是从数据库 ...
- 基于.NET的弹性及瞬间错误处理库Polly
本文基本是官方说明的翻译和总结(https://github.com/App-vNext/Polly) 什么是Polly? Polly是一款基于.NET的弹性及瞬间错误处理库, 它允许开发人员以顺畅及 ...