分类目录归档: 学习日志

好书推荐《Go语言编程》

以前听过Go语言,听说是谷歌出的,前C语言作者参与写的语言,看中它的坚强后盾,还有那个什么并发编程。前天在书城看到,然后就顺手买下了,回去看了一天觉得这书还不错,适合我这种初学者。跟C语言比有很多变化,代码写出来很简洁,很灵活,是一门新的语言。目前支持windows平台。
Go语言官网: www.golang.org (需要翻墙)
Go语言中文翻译文档: https://golang-china.googlecode.com/svn/trunk/Chinese/golang.org/index.html

windows获取MIME类型的例子

[cpp]
#include <stdio.h>
#include <Windows.h>

char *get_mime_type(const char *sExtension)
{
HKEY hItem;
if(!sExtension) return NULL;
if (RegOpenKeyEx(HKEY_CLASSES_ROOT, sExtension, 0, KEY_READ, &hItem) == ERROR_SUCCESS)
{
char *sPath = (char*)malloc(MAX_PATH);
DWORD dwSize = MAX_PATH;
DWORD dwType = REG_SZ;
if (RegQueryValueEx(hItem, "Content Type", NULL, &dwType, (LPBYTE)sPath, &dwSize) == ERROR_SUCCESS)
{
RegCloseKey(hItem);
return sPath;
}
RegCloseKey(hItem);
}
return NULL;
}

int main()
{
char *mime = get_mime_type(".jpg");
printf("%sn", mime);

if(mime) free(mime);
return 0;
}
[/cpp]
通过查询注册表来查询 MIME。

【转】LNMP环境下搭建独立SVN服务器简明步骤

这周开始上班了,因为临时的工作场所离家比较远,就在朋友那里暂住了几天。博客也一周多没更新了,周末这两天才想起最近买了台xen架构的vps,256的,仅仅做测试用,所以这两天就一直折腾这机器了。这里要说的就是折腾中总结的东西,希望有用。

因为做开发,希望搞个自己的私人svn,第三方的服务又不大信任,于是打算在vps上搭建svn试试,正常情况下我一般使用lnmp跑网站,有些情况也可能再加一个apache来处理后端。

众所周知,svn可以以独立服务器形式安装,也可以以apache为基础安装,为了便于web方式的定位查看,某个文件,决定搭建apache+svn的服务器。但vps上装了lnmp,于是就继续增加了lnmp一键包的兼容apache包,本以为可以顺利,没想到安装后遇到各种问题,这里就不再讨论了,据说是因为我使用的军哥的lnmp在apache的端口上做了更改,监听的不是默认端口,需要转发。这对于linux知识几乎空白的我,似乎很难实现,搜索很多文章测试无果,最终放弃了,并选择了svn独立服务器。下面是在网上搜集整理的linux下安装独立svn服务器的简明步骤。发出来填补一下博客一周没更新的空白吧。

系统环境:CentOS 5.8 32bit
内存:256 MB

直接
yum install subversion
很快就完成了,结束后配置SVN服务器端的版本库

一般在/usr/local下建立SVN文件夹并赋予777
chmod -R 777 /usr/local/svn
然后直接执行命令
svnadmin create /usr/local/svn/project
其中project等文件夹都可以随意命名。
这样,独立的svn服务器端就建立好了。

现在需要的是用户能访问这个SVN,那就要对SVN进行一些配置,默认情况下是针对单个版本库有独立的用户密码等权限控制的。所以,在版本库中(即版本库目录下)会有svnserve.conf、authz、passwd等文件,我们只需修改三个文件。

1、修改svnserve.conf
命令如下:
vi svnserve.conf
内容中有如下已注释部分
# anon-access = read
# auth-access = write
# password-db = passwd
把前面的#号和空格去掉,如下
anon-access = none
auth-access = write
password-db = passwd

2、修改authz
[groups]
poorren = poorren //创建一个poorren的组,并制定一个用户poorren
[/]
//制定根目录下的权限
@poorren = rw //poorren组用户权限为读写
*= r //其他用户只有读权限

3、修改passwd
//创建或修改用户密码
[users]
poorren = 123456 //用户名为poorren的用户的密码为123456

到这里就配置结束了,然后启动svn服务
svnserve -d -r /usr/local/svn

如果想开机就启动的话,就
vi /etc/rc.local
直接把上面命令放到这个文件里保存后退出。

全部工作做好了就可以使用客户端来同步数据了,这里安装的是独立的svn服务器,所以不能使用http形式的访问方式,需要使用svn://server ip/poorren来访问。
剩下的就是客户端的具体使用了,不在本文讨论范围内,这里不做赘述了。另外,小子也仍在学习linux的使用,目前一直折腾CentOS,如果有对CentOS比较了解的朋友,欢迎指点。

原文链接:http://www.poorren.com/lnmp-build-svn-serve/

土豆的视频

前些天在土豆发现一个很搞笑的视频,想把它粘到别的网站去,发现土豆的视频默认是自动播放的。allowscriptaccess="always" allowfullscreen="true" wmode="opaque" width="480" height="400" 在这些参数里也没有禁止自动播放的参数。一阵百度后无果,问官方也无果。后去别人网站看源码发现。原来在链接的前面有 src=http://www.tudou.com/v/1dsIVG0vGjM/&resourceId=93442191_05_02_99&autoPlay=false/v.swf 把true改为false即可。。。

站一段搞笑视频

 

使用证书登录服务器

最近弄openssl,发现证书这东西很安全。然后在网上找到了怎样用证书登录linux服务器的方法。

1 切换到自己目录 

cd ~ 

2 新建.ssh目录 有 . 的目录是隐藏的,要 ls -al  参数才能看得到 

mkdir .ssh

3 进去

cd .ssh

4 以下是 xshell 版本的生成证书

 

 

5 在.ssh目录下

vi authorized_keys

6 把上图复制的全部内容 复制到authorized_keys这里。

7 保存

wq

8 打开/etc/ssh/sshd_config这个文件

vi /etc/ssh/sshd_config

9 搜索 /PasswordAuthentication  把 PasswordAuthentication yes 改为 PasswordAuthentication no 禁止密码登录 当然你也可以不改 也就是密码和证书 一起可以登录

10 wq 保存退出

11 重启sshd 服务然后就可以了

service sshd restart

 

私钥最好加密码,防止被偷。