Linux下搭建个人网站
前不久在阿里买了一个服务器,然后开始第一次尝试搭建自己的个人网站。前端采用了bootstrap框架,后端采用的是PHP,数据库使用的是Mysql。新手第一次在linux下搭建遇见很多问题,在这里分享一下.
搭建网站的准备工作 :
由于我采用的是centos系7.0系统,软件安装采用了yum去安装相应的软件,依次安装了apache,php,以及mysql,
关于版本控制,我使用了github远程仓库,实现代码的同步,将本地代码上传到服务器,然后在centos下通过命令行将代码clone到/var/www/html下。
起初没有经验,将代码从github远程仓库pull下来,在/var/www/html目录下生成了一个PHP目录,然后我将PHP中的个人网站的项目copy到/var/www/html目录,(cp /var/www/html/PHP/leetao ./),然后启动了apache,(/etc/init.d/httpd start),之间访问远程服务器公网IP,apache成功启动,然后访问个人网站的主页面:公网IP/leetao/,主页面正常,这个时候我点击注册页面,开始尝试注册,发现出现500 服务器内部错误。然后上网搜了一下相关资料,说是权限问题,及apche对网站根目录只具有读的权限,并不具有写的权限,然后使用chown -R apache:apache /var/www/html (Ubuntu 下apache的默认用户是www-data,可以通过cat /etc/passwd查看)以及chmod 755 /var/www/html 命令修改apache权限。
折腾许久后来调用类方法的中间模块生效了,但是 类方法似乎没有正确执行,也没有返回任何错误,然后用vim打开了类文件,发现问题,在linux下打开类文件,文件出现大量“^M”字样,上网搜索了一下出现这个现象的原因是因为MS-DOS和Windows是回车+换行表示换行,因此在linux下用vim查看会出现"^M"的符号。但是并不是所有文件都出现了这种问题,我在Windows下用notepad打开出现问题以及没有出现问题的两种文件,发现出现问题的文件在notepad右下角格式均为
,没有问题的都是
。然后尝试使用vi打开文件,然后安Esc键在命令下输入:%s/^V^M/,然而并没有生效,后来自己手动删除"^M",修改完成之后运行程序。
后来后台还是无法执行,然后我在linux下将php的的报错功能打开:用vim打开php.ini配置文件,我的配置文件位于/etc/php.ini,因为php.ini信息比较多,一行一行查找显得不太现实,按Esc键,进入vim命令行模式,通过/words去查找 ,其中对于有很多查找结果的话,按N键,向上查找,按N键显示下一个查找结果,找到指定行。
在linux下将php的的报错功能具体步骤(在/etc/php5/apache2下):
1.搜索并修改下行,把Off值改成On
display_errors = Off
2. 搜索下行
error_reporting = E_ALL & ~E_NOTICE
或者搜索:
error_reporting = E_ALL & ~E_DEPRECATED
修改为 error_reporting = E_ALL | E_STRICT
打开浏览器调试工具,根据错误一一修改了错误,代码问题解决,但之后将代码提交到github过程上,出现了许多新的错误:
Git冲突:commit your changes or stash them before you can merge.
从网上查找解决办法:
第一种:git stash
git pull
git stash pop
然后接下来diff一个此文件看看自动合并的情况,并做成相应的修改。
第二种:简单粗暴的方法:放弃本地修改,直接覆盖
git reset --hard
git pull
补充:
git stash: 备份当前的工作区的内容,从最近的一次提交中读取相关内容,让工作区保证和上次提交的内容一致。同时,将当前的工作区内容保存到Git栈中。
git stash pop: 从Git栈中读取最近一次保存的内容,恢复工作区的相关内容。由于可能存在多个Stash的内容,所以用栈来管理,pop会从最近的一个stash中读取内容并恢复。
git stash list: 显示Git栈内的所有备份,可以利用这个列表来决定从那个地方恢复。
git stash clear: 清空Git栈。此时使用gitg等图形化工具会发现,原来stash的哪些节点都消失了
Linux下搭建个人网站的更多相关文章
- MongoDB学习笔记—Linux下搭建MongoDB环境
1.MongoDB简单说明 a MongoDB是由C++语言编写的一个基于分布式文件存储的开源数据库系统,它的目的在于为WEB应用提供可扩展的高性能数据存储解决方案. b MongoDB是一个介于关系 ...
- Linux下搭建PHP环境
转载于: http://www.uxtribe.com/php/405.html 该站下有系列PHP文章. 在Linux下搭建PHP环境比Windows下要复杂得多.除了安装Apache,PHP等软件 ...
- Java学习心得之 Linux下搭建Java环境
作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Java学习心得之 Linux下搭建Java环境 1.前言2.JDK安装3.配置环境变量4. ...
- Linux下搭建JSP环境
Linux下搭建JSP环境 作为一名Java EE系统架构工程师,经常需要搭配和建立JSP(Java Server Pages)的开发环境和运行环境,所以本人在平时的工作中积累了一些在Linu ...
- 【转】在Linux下搭建Git服务器
在 Linux 下搭建 Git 服务器 环境: 服务器 CentOS6.6 + git(version 1.7.1)客户端 Windows10 + git(version 2.8.4.windows. ...
- .Net Core实战教程(一):Linux下搭建项目
.Net Core实战教程(一):Linux下搭建项目 附言 .net core 1.0的时候就开始关注了,一直没有用于项目.真正用于项目我是2.0开始使用的.这几年也总结出一些经验.最近有空就写出来 ...
- Linux下搭建iSCSI共享存储的方法 Linux-IO Target 方式CentOS7-1810下实现
iSCSI(internet SCSI)技术由IBM公司研究开发,是一个供硬件设备使用的.可以在IP协议的上层运行的SCSI指令集,这种指令集合可以实现在IP网络上运行SCSI协议,使其能够在诸如高速 ...
- Linux下搭建iSCSI共享存储的方法 Linux-IO Target 方式 Debian9.5下实现
iSCSI(internet SCSI)技术由IBM公司研究开发,是一个供硬件设备使用的.可以在IP协议的上层运行的SCSI指令集,这种指令集合可以实现在IP网络上运行SCSI协议,使其能够在诸如高速 ...
- Linux下搭建C/C++编程环境
Linux下搭建C/C++编程环境 1.KDevelop下载 wget -O KDevelop.AppImage https://download.kde.org/stable/kdevelop/5. ...
随机推荐
- C#内存管理与垃圾回收
垃圾回收还得从根说起,就像生儿育女一样. 根:根是一个位置,存放一个指针,该指针指向托管堆中的一个对象,或是一个空指针不指向任何对象,即为null.根存在线程栈或托管堆中,大部分的跟都在线程栈上,因为 ...
- NOSDK--项目历程
nosdk是一个基于cocos2d-x的sdk自动打包及统一接入框架,项目地址:https://github.com/nottvlike/nosdk.git. --更新(2015.07.15) 添加u ...
- 2013成都网络赛 C We Love MOE Girls(水题)
We Love MOE Girls Time Limit: 1000/500 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) ...
- Codeforces #261 D
Codeforces #261 D D. Pashmak and Parmida's problem time limit per test 3 seconds memory limit per te ...
- UI第九节——UIStepper
- (void)viewDidLoad { [super viewDidLoad]; // 实例化UIStepper,大小是固定的 UIStepper *stepper = ...
- jquery_DOM笔记
回头补充知识: jquery事件复习: bind() 用于绑定多个事件,当某一个节点需要进行多项处理的时候使用 .使用方式 $(select).bind({event:function(),event ...
- BZOJ2982——combination
1.题意:求 C(n,m) % 10007 ,10007是质数咯 n和m < 2000000000 2.分析:这个东西太大了,显然不能用n!的阶乘预处理的方式搞出来,也不能用递推公式搞出来 于是 ...
- javascript基础02
javascript基础02 1.数据类型 数据类型的描述在上篇的扩展中有写到链接 由于ECMAScript数据类型具有动态性,因此的确没有再定义其他数据类型的必要.这句话很重要. 如果以后再数据类型 ...
- [BZOJ2391]Cirno的忧郁
[BZOJ2391]Cirno的忧郁 试题描述 Cirno闲着无事的时候喜欢冰冻青蛙. Cirno每次从雾之湖中固定的n个结点中选出一些点构成一个简单多边形,Cirno运用自己的能力能将此多边形内所有 ...
- iOS9 新功能:Support Universal Links
先看官方文档:https://developer.apple.com/library/ios/documentation/General/Conceptual/AppSearch/UniversalL ...