存档

‘Linux’ 分类的存档

把opencart的url rewrite规则从apache转到nginx

2010年8月9日 作者:water

从网上找到一个好工具:

http://www.anilcetin.com/convert-apache-htaccess-to-nginx/

转换前

# SEO URL Settings
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)\?*$ index.php?_route_=$1 [L,QSA]

转换后:

if (!-f $request_filename){
set $rule_0 1$rule_0;
}
if (!-d $request_filename){
set $rule_0 2$rule_0;
}
if ($rule_0 = “21″){
rewrite ^/(.*)\?*$ /index.php?_route_=$1 last;
}

经测试,效果良好可用。

Linux , , ,

给文本文件每行加前缀

2010年7月20日 作者:water

awk ‘{$0=”前缀”$0}1′ filename.txt

Linux

修改sshd_config加速ssh连接

2010年7月7日 作者:water

sudo vim /etc/ssh/sshd_config

GSSAPIAuthentication no
UseDNS no

Linux

pure-ftpd在ubuntu 10.04 server LTS的配置注意事项

2010年7月4日 作者:water

原先我一直使用vsftpd,vsftpd有一个致命BUG,偿试多年仍然不能解决。就是有时上传文件上传到100%,会等很久,然后会提示你要不要覆盖文件,点是还是否都不能成功上传这个文件。这个BUG发生的概率极高,特别是有大量小文件上传的时候尤为明显。

最近使用cpanel时发现ftp上传不会出现类似的情况,查了一下,cpanel用的是pure-ftpd,速在ubuntu 10.04 server LTS上部署pure-ftpd,果然,暂时还未发现vsftpd这种上传小文件会卡住的BUG。在ubuntu server中安装pure-ftpd很简单,直接apt-get install pure-ftpd即可,装好后有两个参数要注意设置:

一个是sudo vim /etc/pure-ftpd/conf/ChrootEveryone,文件内容为yes,以解决锁定ftp登录用户主目录的问题

另一个是sudo vim /etc/pure-ftpd/conf/DontResolve,文件内容为yes,以解决在登录时出现:响应:    425 Sorry, invalid address given 错误的问题。

Linux ,

ubuntu 10.04默认安装redmine注意事项

2010年7月3日 作者:water

在ubuntu 10.04中安装redmine比以往简单了很多,直接sudo apt-get install redmine redmine-mysql就可以了。但估计是初次尝试这种安装方式,还有一些bug。解决的注意事项如下:

安装步骤:

1.sudo apt-get install redmine redmine-mysql

2.修改自动建立的数据库编码为utf8_general_ci ,不改的话,会造成中文乱码

3.生成会话存储密钥:RAILS_ENV=production rake generate_session_store

4.创建数据库表结构:RAILS_ENV=production rake db:migrate

5.配置默认数据,选择zh:RAILS_ENV=production rake redmine:load_default_data

默认安装好后,在虚拟主机里面添加

RailsEnv production
RailsBaseURI /pm

然后ln -s /usr/share/redmine/public/ /var/www/pm

重启apache2后,打开http://localhost/pm/ 后提示Phusion Passenger错误:

Ruby on Rails application could not be started

Error message:Permission denied – /etc/redmine/default/session.yml

经查,这是因为Phusion Passenger默认运行帐户不是apache2默认的www-data,造成了权限的问题,需要在虚拟主机里面添加 PassengerDefaultUser www-data

重启apache2后就可以正常打开redmine了。

email提醒的功能需要增加一个/etc/default/email.yml文件,内容如下:

production:
  delivery_method: :sendmail

Linux ,

在ssh时,关闭其他用户的连接

2010年5月17日 作者:water

用ssh时,经常会因为网络的原因断掉一些连接。白白占用资源。看着也碍眼。可用如下方法断开。

1、查明登陆端口;
water@ubuntu:~$ w
12:15:39 up  4:45,  3 users,  load average: 0.67, 0.53, 0.46
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
water    pts/0    :0.0             12:07    0.00s  0.17s  0.00s w
water    pts/1    :0.0             11:50   17.00s  0.19s  0.01s mc
2、通知该用户将要关闭他:
# echo “I will close your connection” > /dev/pts/1
这样他的终端将显示该信息。

3、关闭用户连接
# fuser -k /dev/pts/1

Linux

Ubuntu Server 9.10下部署apache2+mod_rails+redmine 0.8.7笔记

2009年12月21日 作者:water
  1. 安装ubuntu时,选择安装lamp server和mail server和openssh server
  2. 安装编译环境与常用工具:sudo apt-get install build-essential mc zip unzip unrar rar phpmyadmin subversion
  3. 下载redmine:wget http://rubyforge.org/frs/download.php/67144/redmine-0.8.7.tar.gz
  4. 解压:tar xzvf redmine-0.8.7.tar.gz
  5. 修改database.yml和email.yml,将其中email的发送邮件方式smtp改为sendmail
  6. 安装redmine基本运行环境:sudo apt-get install ruby ruby-dev rails librmagick-ruby libmysql-ruby
  7. 初始化redmine项目:rake config/initializers/session_store.rb;RAILS_ENV=production rake db:migrate;RAILS_ENV=production rake redmine:load_default_data;
  8. 安装mod_rails模块:sudo gem install passenger
  9. cd /var/lib/gems/1.8/gems/passenger-2.2.8/bin
  10. 安装passenger编译环境:sudo apt-get install apache2-prefork-dev libapr1-dev libaprutil1-dev
  11. 运行mod_rails安装到apache2绑定:sudo ./passenger-install-apache2-module
  12. 打开rewrite模块:sudo a2enmod rewrite
  13. 加入redmine虚拟主机配置到apache2配置文件
  14. <VirtualHost *:80>
        ServerName www.myapp.com
        DocumentRoot /myapps/redmine-0.8.7/public
        <Directory /myapps/redmine-0.8.7/public>
            Allow from all
            Options -MultiViews
        </Directory>
    </VirtualHost>
  15. sudo /etc/init.d/apache2 restart
  16. 打开www.myapp.com即可

Linux, 其他类 , , , ,

linux下批量删除,某目录中特定文件类型,且包含指定文本的行

2009年12月2日 作者:water

find | grep .txt | xargs grep -l teststring | xargs sed -i -e ‘/teststring/d’

Linux

采用PhpDocumentor生成ThinkPHP2.0API文档

2009年11月12日 作者:water
  1. 安装PhpDocumentor: sudo pear install –alldeps  PhpDocumentor
  2. 生成:phpdoc -d ThinkPHP2.0_SVN -t ThinkPHP2.0_API ,ThinkPHP2.0_SVN是ThinkPHP框架所在目录,ThinkPHP2.0_API是生成文件存放的目录,默认格式是一组html文件
  3. 替换默认的html编码定义,以让中文能正常显示:find | xargs rpl “iso-8859-1″ “utf-8″
  4. 用浏览器打开ThinkPHP2.0_API目录下的index.html即可浏览,我已放一份到http://docs.GNULife.CN/ThinkPHP2.0_API/

Linux, PHP+Mysql ,

Linux下的几个好东西

2009年6月1日 作者:water

GiftWrap: 轻松创建 .deb 包
GiftWrap 通过图形化的向导界面一步步的引导你创建供 Ubuntu 使用的 .deb 二进制包,在填入 Debian 包的相关信息后,该程序将为你自动构建包,最终你将获得 .deb 及 .orig.tar.gz 等相关文件。

GiftWrap 提供有源码包和 deb 包,可从其官方网站的下载页面获取。

舒阁图形界面客户端: 下载和管理电子书籍的好工具
毓琦(GYuki,G = PyGTK)是舒阁(shuge)的桌面图形界面客户端,可以用于下载和管理电子书籍。

20090525实现了图形界面接口,方便不熟悉Gentoo系统的用户使用。

特性:

* 跨平台,多语言
* 自动管理同一书籍多版本
* 支持正则表达式搜索
* 使用图书馆分类法分类

安装需求
命令行客户端,>= python-2.5 图形界面客户端,>= pygtk-2.0
交流

* 下载、安装和使用 – 下载最新版本,简明入门指南
* 舒阁在Google Code上的主页
* 舒阁在Google上的论坛 – 常见问题答案,普通用户、资源作者、舒阁编辑与舒阁开发者之间的交流中心
* 舒阁在豆瓣上的小组 – 普通用户之间的交流中心

觉得舒阁的电子书太少?
您可以参与无限扩充它!有这种冲动的同学,猛点这儿。
TODO

* 收集自由书籍超过10,000册
* 构建基于Django架构的舒阁在线(shuge-online),允许用户使用浏览器在线或离线(Google Gear)浏览所有资源
* 支持douban.com API
* 支持P2P共享和Ed2k下载
* 界面追随Songbird

Thanks
GMail/CPyUG/Fetion/douban上所有被我骚扰过的同学,由于名字太多,就不列出来了。每次 循环性情绪低落综合症 病发,总有您们的关照,才使得我恢复,能继续写下去。:)
其它
跟那位第一位提交bug的Mac OS X用户同学说声抱歉。我这儿无法部署Mac OS X环境,所以,暂时无法实现支持非Linux平台。

LibFetion: 是由邓东东主导开发的第三方飞信应用程序。该程序具有较强的跨平台性,在主流操作系统和手持设备上都有版本。 目前该软件已于近日发布了 0.9.3 版本。与中国移动官方提供的飞信2008最新版有什么区别呢?对,就是没有烦人的广告,界面简洁,没有多余的东西,速度超快。

该版本有如下变化:

1. 更新协议-补全好友信息.
2. 更新协议-解决飞信群服务器改变引起部分朋友程序崩溃.
3. 更新协议-解决由群信息导致程序崩溃的BUG.
4. 解决部分机器人号码信息显示不正确的问题.
5. 152号码段支持.
6. 解决显示皮肤BUG.
7. 修复发生短信的BUG.

Linux , , ,