关于安装LNMP的问题总结

由于服务器数据搬迁,由原来的LAMP空间改为LNMP的VPS。问题遇到挺多。其实LNMP的安装并不复杂,然而问题在于由于选择主机环境,原本默认安装的是Rails版本的服务器,默认安装了Nginx,MySQL。当LAMP环境迁移过去时,会发现一系列问题。服务器往往为了优化某些性能,去掉某些模块,这就不知道默认的Nginx或者MySQL安装了那些模块,只有当程序运行时候才发现问题。

1.502 bad gateway

由于服务器默认没有安装php环境,于是安装了PHP,Apache2

sudo apt-get install php5 libapache2-mod-php5

安装后的默[......]

Read more

Android:Error retrieving parent for item: No resource found that matches the given name ‘Theme.AppCompat.Light’.

已经是最新版本的Eclipse adt,原本的项目运行正常。将项目创建成git项目后出现了:Error retrieving parent for item: No resource found that matches the given name   ‘Theme.AppCompat.Light’.

原因是无法找到原来的android-support-v7的支持包,需要重新添加。

解决办法:

1.右键项目 ->Properties

2.选择 Android

3.在底部 Library 选择框当中点击Add

4.在弹出的对话框中选择android-s[......]

Read more

Google Play Service添加Admob广告

2014年8月1日以后google不再提供admob版本的sdk包下载,而是通过集成Google Play Service的API功能实现。尽管Google已经提供了完善的文档,但新版本植入Admob广告还是浪费了不少时间。现在详细记录下来。

1.安装Google Play Service

不要去找过去的Admob SDK了,因为Google Play已经不接受新的APP包含Admob SDK 上架。点击 Android SDK Manager ,打开Android SDK管理器,更新最新版本的SDK。目前更新SDK是比较困难的事情,因为dl.google.com已经被墙,只能使用[......]

Read more

记一次网页木马查杀

wordpress博客被挂马,网页头部被植入了一段英文广告。如图-1

tj_header图-1 被网页木马植入的广告

于是我开始了一段查杀网页木马的经历,过程比较艰辛,不过问题总算解决了。打算记录一些经验,分享一些心得,希望对他人有所帮助。于是有了这篇文章。

首先,网站被挂马已经不是第一次了,甚至我觉得这是个人独立博客的一堂必修课。以往的挂马比较简单,往往是在网页的头部或者尾部植入一段js代码,通过查找网页的关键字往往就能找到,删除之后就可以。
然而这次的网页木马比较的复杂。打开网页源码来看,在“</head>”标签之前植入了一下一段js代码。这段代码看似不是直接写入广告,更像是一段解码[......]

Read more

HttpClient 4.3.3 cookie rejected的解决办法

在用HttpClient 的最新版本4.3.3写一个网站注册时,出现了cookie rejected的问题。就是拒绝写入cookie,虽然没影响最终的注册结果,但问题总需要解决的。于是在搜索了网上的解决办法,发现那都是过去的旧版本的解决办法。新版本的4.3.3没有相关的解决办法不过总算知道那是cookie的策略设置问题。于是看了官方网站的文档http://hc.apache.org/httpcomponents-client-4.3.x/tutorial/html/statemgmt.html#d5e553,总算将问题解决了。

网上关于HttpClient4.3.3的开发文档还是比较少,[......]

Read more

objective-c 点到直线的距离以及与垂足的交点

问题描述:点到直线或者线段的距离

假设有一点坐标P(x0,y0),有一线段AB,A坐标(x1,y1),B坐标(x2,y2),求P点到AB线段或所在直线的距离d以及P点在直线上的垂足C(x,y)。

 这需要复习一下高中的数学知识。
首先需要将A,B两点坐标转换为直线方程的一般式Ax+By+C = 0,过程就不推演了。
参数计算:
A=y2-y1;
B=x1-x2;
C=x2*y1-x1*y2;
1.点到直线的距离公式:
d= ( Ax0 + By0 + C ) / sqrt ( A*A + B*B );
2.垂足C(x,y)计算公式:
x = (  B*B*x0[......]

Read more

android 读写中文避免乱码

android读取文件中文出现乱码的原因无非就是,读取文件的字符格式与写如文件的格式不一致。因此,避免中文乱码,要在写入文件的时候按照一定的格式写入,读取的时候按照一定的格式读取。这样对应就不会出现乱码。对于其它的文本读取,在不知道何种格式的时候,可以先读取相应的文件信息,再进行相应的转码。

下面是一个避免中文读写出现乱码的类。

RWFile.java

package com.rwfile.main;

import java.io.BufferedReader;

import java.io.BufferedWriter;

import java.io.File[......]

Read more

android FFmpeg的编译(Mac版)

使用的是Mac系统,根据https://github.com/yixia/FFmpeg-Android的脚本程序编写的。

1.安装工具
Mac需要的安装基本的GCC编译器,ccache缓存编译器(安装ccache),Mac版NDK7(注意不要使用NDK8,使用NDK8会出现Host system ‘darwin-x86′ is not supported by the source NDK!的编译错误,原因有待分析)以及git工具。

如果安装了Xcode开发工具,GCC的安装将非常简单:打开Xcode,Xcode–>Preferences–>Downloads,点[......]

Read more

Unity 3D 导出Android Eclipse项目

最近接触了Unity 3D这款游戏引擎,主要是想应用在移动领域,跨平台是一大亮点之一,这样可以在并不熟悉Android或者iOS编程的经验上应用。开发了一个Demo并试着将Unity 3D项目移植到Android平台,总算移植成功了。现在记录一下主要步骤以及一些错误。

我使用的Unity 3D是4.0.1版本的,要发布Android版本的应用需要付费版本的,免费版本不能发布Android应用。作为学习可以使用破解版本,但真正发布到应用商店还是需要支付费用的。

Unity 3D发布Android Eclipse项目的步骤:

1.新建一个Unity 3D项目,点击File–&g[......]

Read more

Android添加admob广告

今天试着将android的应用植入google abmob的广告,没想到会花了如此长的时间。其实android植入admob的的广告并不复杂,就是版本不一致导致了各种问题,现在总算解决了。以下总结一下。

1.首先要注册一个admob的账号,获取应用的发布ID,这就省略了。

2.下载admob的SDK GoogleAdMobAdsSdk-6.2.1,并导入到项目中去。

3.配置AndroidManifest.xml。

uses-sdk标签

<uses-sdk android:minSdkVersion="7"
android:targetSdkVersion="[......]

Read more