服务器运维

Linux下简单详细搭建SVN服务器进行版本控制

1          安装SVN

官网下载:http://subversion.apache.org/packages.html

SVN客户端:TortoiseSVN,官网下载:http://tortoisesvn.net/downloads.html

# yum install subversion

1.       新建一个目录用于存储SVN所有文件

# mkdir /svn

2.       新建一个资源仓库

# svnadmin create /svn/project

# ls /svn/project/

conf  db  format  hooks  locks  README.txt

目录用途说明:

» 阅读全文

关键词: 版本控制 , svn服务器

SVN利用POST-COMMIT钩子自动部署代码到生产环境中

svn利用post-commit钩子自动部署 流程

首先创建svn版本库/data/svn/jincon.com,然后在svn库中创建svn钩子,在开发电脑上检出最初版本,并且将自己的代码 提交到svn上,此时svn钩子将会把代码实时检出/更新到/data/site/www.jincon.com站点目录中。最后访问浏览器测试。

1、先创建版本库:

svnadmin create /data/svn/jincon.com

2、编辑post-commit文件

# vim /data/svn/jincon.com/hooks/post-commit
3、post-commit代码:
#!/bin/bash
# DateTime:2015-01-01
# AuthorName: Jincon
# description:用于实时检出的钩子

» 阅读全文

关键词: svn , post-commit钩子

Can't open file '/home/www/.subversion/servers':Permission denied的解决方法

在apache环境下用php执行服务器上的svn co命令,总有Can't open file '/home/www/.subversion/servers':Permission denied 。

解决办法:

svn命令加入--config-dir /home/www/.subversion

例如:

svn co svn://192.168.45.128/miui --username jincon --password jincon 
--config-dir /home/www/.subversion

其实前面已经说过了,这里单独说下。

然后,svn的配置目录就变为/home/www/.subversion/

修改下面的servers文件:

[global]

store-passwords = yes

store-plaintext-passwords = no

否则会出现这样的提示。


更多SVN的wiki地址,详见:http://www.tomtalk.net/wiki/SVN  不错可以一下。


至于SVN搭建方法:

Linux(centos)利用Subversion搭建独立的SVN服务器详细教程


利用php进行svn更新的php代码及php执行svn更新注意事项

SVN除了手动去执行命令外,其实php也可以进行svn更新

写一个php,这个脚本的用户组和用户主必须都是nginx或者apache的用户组和用户主。

脚本代码如下,其实比较简单,可以自己去完善,代码我也是随便在网上找的。


<?php
error_reporting(E_ALL);
$handle = popen('svn up --username jincon --password jincon /home/wwwroot/default/ 2>&1','r');
echo "'$handle'; " . gettype($handle) . "\n";
$read = fread($handle, 2096);
echo $read;
pclose($handle);


» 阅读全文

关键词: svn更新

php操作更新svn提示Can’t open file ‘.svn/lock’: Permission denied的解决方法

Can’t open file ‘.svn/lock’: Permission denied

这个问题原因是因为第一次checkout的时候我是用root执行的,使得其他用户没有权限

两个解决办法:

 一.把.svn的属主、组修改给用户,(su www ,   svn co svn://127.0.0.1/svnadmin/yiidemo --username jincon --password jincon)


 二.给目录加权限,www权限,这算是最简单的办法了。


至于安装SVN 详见:


Linux(centos)利用Subversion搭建独立的SVN服务器详细教程


关键词: svn教程

如何将Ubuntu Server 12.04 升级到 Ubuntu Server 14.04 LTS

How to Upgrade Ubuntu Server 12.04 to Ubuntu Server 14.04 LTS

This tutorial will describes how to upgrade Ubuntu Server 12.04.x to Ubuntu Server 14.04 LTS. As we know, Ubuntu Server 14.04 is the latest version of ubuntu server edition that released by canonical few month ago.

NOTE : Before starting upgrade to latest version of ubuntu server, make sure you have full backups you data and everything important on your ubuntu server to other remote system or backup drive. If you are using Ubuntu on VPS make sure take a server snapshot at your provider before upgrading. And we do not grantees the following tutorial will work for you properly.

Step 1: Updating Ubuntu Repository and Install Update Manager

Make sure your current ubuntu server  is fully up to date, doing it with the following command:

sudo apt-get update

Install update manager core package with these command:

sudo apt-get install update-manager-core

» 阅读全文

关键词: ubuntu升级

php-fpm开启多个主进程实例解决高并发下nginx出现502 的问题

我们经常在LNMP环境中遇到高并发下nginx出现502 的问题。

一般情况下,服务器在遇到高并发时nginx发起的连接数,远远超过了php-fpm所能处理的数目,导致端口(或socket)频繁被锁,造成堵塞,所以容易出现502错误。

那么我们可以给php-fpm开启多个实例解决高并发下nginx出现502 的问题

===============================================

譬如我想开400个php-fpm进程,注意大家要根据实际情况来调整。



我 这里作为演示,只启用两个php-fpm实例,把php-fpm分为两部分,每部分各听一个端口或socket,这样就减少了lock,依然保持400个 php-fpm进程,当然还有2个主进程,每个实例启用200个,采用nginx的upstream负载均衡,轮询每个socket来处理请求。


» 阅读全文

关键词: nginx出现502 , php-fpm

Nginx判断User Agent屏蔽YisouSpider蜘蛛


yisouspider蜘蛛太神经病了,今天不断接到服务器报警短信,一上服务器看了下,尼玛全是YisouSpider蜘蛛。

YisouSpider是阿里巴巴你让我说你什么好呢,网上搜了一下这是阿里旗下一个叫"一搜视频"的网站发出的蜘蛛。这货就跟神经病一样,一爬起来都疯了一样,简直是DDOS啊。。。特别是对于1Mb的小站,伤不起啊。


11.jpg - 大小: 699.78 KB - 尺寸: 900 x 341 - 点击打开新窗口浏览全图

» 阅读全文

关键词: yisouspider蜘蛛