安装gvim、 ctags、tlist:
-----------------------------------------
(1) 下载gvim72.exe并安装

(2) 下载ctags57w32.zip (ctags)
解压后将ctags.exe放置到C:\windows\system32\

"开始" --> "运行" --> "cmd"
C:\Documents and Settings\Administrator>cd (进入源码所在目录)
D:\soft\linux-2.6.26\linux-2.6.26>ctags -R * (生成tags文件)

(3) 下载taglist_45.zip (tlist)
解压后将taglist_45\plugin\taglist.vim放置到C:\Program Files\Vim\vim71\plugin
      将taglist_45\doc\taglist.txt放置到C:\Program Files\Vim\vim71\doc



编辑D:\Program Files\Vim\_vimrc
-----------------------------------------
set tags=D:\soft\linux-2.6.26\linux-2.6.26\tags


" TAB距离 (vim配置; vim技巧)
set tabstop=4          " 保存一个tab是4个字符
set softtabstop=4      " 按一次tab前进4个字符
set shiftwidth=4       " shiftwidth写代码时用到,缩进为4字符
set cindent
set nobackup           " 让VIM不生成备份文件(~文件)

" 打开文件时光标自动到上次退出该文件时的光标所在位置
autocmd BufReadPost * if line("'\"") && line("'\"") <= line("$") | exe "normal`\"" | endif

if has("win32")
    set guifont=Nimbus_Mono_l:h15:cANSI
    "set guifontwide=楷体_GB2312:h10
    "set guifontwide=YaHei Consolas Hybrid:h10
    au GUIEnter * simalt ~x   " 窗口最大化
endif

colorscheme    koehler        " 颜色类型

set pastetoggle=<F11>         " pastetoggle(粘贴模式切换)可以避免自动缩进
                              " 的带来的格式影响;每次按下<F11>键可以打开
                              " /关闭自动缩进功
set expandtab                 " 将tab键转换为空格



代码折叠
-----------------------------------------------
set foldmethod=syntax " 用语法高亮来定义折叠
set foldmethod=indent " 更多的缩进表示更高级别的折叠(这个似乎效果好一些)

zo 打开折叠,也可以用方向键(左右键)打开折叠
zc 关闭折叠(只要在被折叠的块中的任一个语句就行)
zC 对所在范围内所有嵌套的折叠点进行折叠
zO 对所在范围内所有嵌套的折叠点展开

    当使用marker方式时,需要用标计来标识代码的折叠,系统默认是{{{和}}},最好不要改动之。可以使用下面的命令来创建和删除折叠:

zf   创建折叠,比如在marker方式下:
     zf56G,创建从当前行起到56行的代码折叠;
     10zf或10zf+或zf10↓,创建从当前行起到后10行的代码折叠。
     10zf-或zf10↑,创建从当前行起到之前10行的代码折叠。
     在括号处zf%,创建从当前行起到对应的匹配的括号上去((),{},[],<>等)。

zd   删除(delete)在光标下的折叠。仅当'foldmethod'设为"manual"或"marker"时有效。
     : set foldmethod (查看当前foldmethod设置,vim默认设置为manual)。
zD   循环删除(Delete)光标下的折叠,即嵌套删除折叠。
     仅当'foldmethod'设为"manual"或"marker"时有效。
zE   除去(Eliminate)窗口里"所有"的折叠。
     仅当'foldmethod'设为"manual"或"marker"时有效。


切换窗口
-----------------------------------------------
用<C-W><C-W>切换当前窗口
当同时打开几个文件时,按<C-W>_使当前窗口最大化

<C-W> = ctrl+w


[+I显示文件中包含光标下<word>的所有行。我常用来浏览某个id在程序中的引用情况。[+I (大写I)


dfx   表示删除到下一个出现x的地方,x可以使任意字符。



%
--------------------------------
%用来匹配块
如果你的光标在类似([{}])或者#ifdef #else #endif上,输入%将把光标跳转到相应的匹配符号上去。

%还可以用来指定命令范围,如果你想把一个
{
    ...
}
的块全部删除。
可以先把光标移到{再敲d%

如果你想把一个块(包括{})全部往里缩进一个tab
可以把光标移到{敲>%

可以把光标移到{敲=%就是缩进一个块



buffer切换
--------------------------------
map <Left> :bp<CR>
map <Right> :bn<CR>
map <F4>    :bd<CR>

就可以用左右方向健来切换buffer(一个编辑文件切换到下一个编辑文件);
F4关闭buffer(关闭当前编辑文件)。

set hidden " 允许在有未保存的修改时切换缓冲区

注: 模式匹配中的回车换行
T42p Intel 2200bg 连接WPA2无线网问题


我是T42p XP SP3 无线网卡是Intel的2200bg 在连WEP的时候没有任何问题
可是在连WPA网络时 经常连不上 试过的路由器包括 NETGEAR LinkSys
最近刚换了个TP-Link 还是同样的问题 可以找到无线网络 可是一直
卡在获取地址阶段 如果这时候从路由器上用网线插在电口 无线就可以
获取到地址了(真怪)
另外开机的时候一般可以获取到地址 当时间长了 会断线 然后再也连不上
了 或者手动断线 也会连不上了 除非重启
相同的机器 我在另一个干净的系统也是同样问题
以前用过Netgear的外置式无线网卡 从未出现过这种问题
驱动已经升级到最新版本了

版上达人指点下吧 我自己的路由器可以设为WEP 可是到别的地方用的时候
就没办法了啊

我的T43也是这个2200BG的无线网卡,XP下不能用,就是连接不到无线网络,VISTA下没问题!
装最新驱动,最新的ac网络控制软件就ok了...连接速度还挺快!我觉得这个问题应该不是问题了吧???


结合Access Connection这个软件用答案补充
1、安装T42的配套软件Access Connection,重启电脑。Access Connection在ThinkPad的官网上有得下。2、双击任务栏右侧那个阶梯状的图标,在弹出的状态对话框中单击“寻找WLAN”按钮,搜寻附近可用的无线热点。3、选定你想连接的的那个热点,点连接就是了。4、连接完毕后提示你是否希望保存成位置概要文件,点是,方便下次自动连接。答案补充
T42有些型号的无线网卡( 比如11abg Wireless Adapter)在遇到WPA或者WPA2加密的时候,即使输入了密钥,仍然无法连接,而总是在分配IP地址。如果这时改用Access Connection替代Windows进行设置,问题就会迎刃而解。总之,我觉得Access Connection是整套ThinkVentage里面最常用,也是最好用的工具之一。不管什么小黑,要是缺了配套的软件,就感觉功能少了许多。
下载地址:
http://driver.it168.com/Download/2004-11-09/driver57884.shtml
问题是这样的,我和我的舍友关系不是很好,它把加密方式改成了WPA2-PSK,自从它改了以后我电脑就上不了网络了,路由器是TP-LINK。起初我以为他故意绑定MAC,IP让我上不了,后来我趁他不在家登陆路由器的设置界面发现他没绑定,那为什么我上不了了呢?后来我发现是加密方式改了,我发现它的无线网络设置里有WPA2-PSK,但是我的电脑却只有WPA-PSK,这是为什么啊,是不是我的IBM T42无法支持这种加密方式?网上也有人有这样的问题,但是没有人知道是为什么,有个人说要打个补丁,但是我在网上根本就没找到有这个补丁啊?有哪个高手知道这个问题要怎么解决吗?现在我只能偷偷用别人的无线网络上网了,别人要是晚上关了去睡觉我就没法上了,而且别人还要看PPLIVE很卡,连打开百度都要好几秒很难受啊!

结合Access Connection这个软件用答案补充
1、安装T42的配套软件Access Connection,重启电脑。Access Connection在ThinkPad的官网上有得下。2、双击任务栏右侧那个阶梯状的图标,在弹出的状态对话框中单击“寻找WLAN”按钮,搜寻附近可用的无线热点。3、选定你想连接的的那个热点,点连接就是了。4、连接完毕后提示你是否希望保存成位置概要文件,点是,方便下次自动连接。答案补充
T42有些型号的无线网卡( 比如11abg Wireless Adapter)在遇到WPA或者WPA2加密的时候,即使输入了密钥,仍然无法连接,而总是在分配IP地址。如果这时改用Access Connection替代Windows进行设置,问题就会迎刃而解。总之,我觉得Access Connection是整套ThinkVentage里面最常用,也是最好用的工具之一。不管什么小黑,要是缺了配套的软件,就感觉功能少了许多。

大方向错误。。。

1、应该在airport express里面设置pppoe连接;
2、可以试着使用WEP加



http://tieba.baidu.com/f?kz=687455626
http://www.macfans.com.cn/thread-136463-1-1.html
1.如何安装rpm软件包

rmp软件包的安装可以使用程序rpm来完成。执行下面的命令

rpm -i your-package.rpm

其中your-package.rpm是你要安装的rpm包的文件名,一般置于当前目录下。

安装过程中可能出现下面的警告或者提示:

... conflict with ... 可能是要安装的包里有一些文件可能会覆盖现有

的文件,缺省时这样的情况下是无法正确安装的可以用

rpm --force -i 强制安装即可

... is needed by ...

... is not installed ... 此包需要的一些软件你没有安装可以用

rpm --nodeps -i 来忽略此信息

也就是说,rpm -i --force --nodeps 可以忽略所有依赖关系和文件问题,什么包

都能安装上,但这种强制安装的软件包不能保证完全发挥功能

2.如何安装.src.rpm软件包

有些软件包是以.src.rpm结尾的,这类软件包是包含了源代码的rpm包,在安装时

需要进行编译。这类软件包有两种安装方法,

方法一:

1.执行rpm -i your-package.src.rpm

2. cd /usr/src/redhat/SPECS

3. rpmbuild -bp your-package.specs 一个和你的软件包同名的specs文件

4. cd /usr/src/redhat/BUILD/your-package/ 一个和你的软件包同名的目录

5. ./configure 这一步和编译普通的源码软件一样,可以加上参数

6. make

7. make install

方法二:

1.执行rpm -i you-package.src.rpm

2. cd /usr/src/redhat/SPECS

前两步和方法一相同

3. rpmbuild -bb your-package.specs 一个和你的软件包同名的specs文件

这时,在/usr/src/redhat/RPM/i386/ (根据具体包的不同,也可能是i686,noarch等等)

在这个目录下,有一个新的rpm包,这个是编译好的二进制文件。

执行rpm -i new-package.rpm即可安装完成。

3.如何卸载rpm软件包

使用命令 rpm -e 包名,包名可以包含版本号等信息,但是不可以有后缀.rpm

比如卸载软件包proftpd-1.2.8-1,可以使用下列格式:

rpm -e proftpd-1.2.8-1

rpm -e proftpd-1.2.8

rpm -e proftpd-

rpm -e proftpd

不可以是下列格式:

rpm -e proftpd-1.2.8-1.i386.rpm

rpm -e proftpd-1.2.8-1.i386

rpm -e proftpd-1.2

rpm -e proftpd-1

有时会出现一些错误或者警告:

... is needed by ... 这说明这个软件被其他软件需要,不能随便卸载

可以用rpm -e --nodeps强制卸载

4.如何不安装但是获取rpm包中的文件

使用工具rpm2cpio和cpio

rpm2cpio xxx.rpm | cpio -vi

rpm2cpio xxx.rpm | cpio -idmv

rpm2cpio xxx.rpm | cpio --extract --make-directories

参数i和extract相同,表示提取文件。v表示指示执行进程

d和make-directory相同,表示根据包中文件原来的路径建立目录

m表示保持文件的更新时间。

5.如何查看与rpm包相关的文件和其他信息

下面所有的例子都假设使用软件包mysql-3.23.54a-11

1.我的系统中安装了那些rpm软件包

rpm -qa 讲列出所有安装过的包

如果要查找所有安装过的包含某个字符串sql的软件包

rpm -qa |grep sql

2.如何获得某个软件包的文件全名

rpm -q mysql 可以获得系统中安装的mysql软件包全名,从中可以获得

当前软件包的版本等信息。这个例子中可以得到信息mysql-3.23.54a-11

3.一个rpm包中的文件安装到那里去了?

rpm -ql 包名

注意这里的是不包括.rpm后缀的软件包的名称

也就是说只能用mysql或者mysql-3.23.54a-11而不是mysql-3.23.54a-11.rpm。

如果只是想知道可执行程序放到那里去了,也可以用which,比如

which mysql

4.一个rpm包中包含那些文件

一个没有安装过的软件包,使用rpm -qlp ****.rpm

一个已经安装过的软件包,还可以使用rpm -ql ****.rpm

5.如何获取关于一个软件包的版本,用途等相关信息?

一个没有安装过的软件包,使用rpm -qip ****.rpm

一个已经安装过的软件包,还可以使用rpm -qi ****.rpm 6.某个程序是哪个软件包安装的,或者哪个软件包包含这个程序

rpm -qf `which 程序名` 返回软件包的全名

rpm -qif `which 程序名` 返回软件包的有关信息

rpm -qlf `which 程序名` 返回软件包的文件列表

注意,这里不是引号,而是`,就是键盘左上角的那个键。

也可以使用rpm -qilf,同时输出软件包信息和文件列表


7.某个文件是哪个软件包安装的,或者哪个软件包包含这个文件

注意,前一个问题中的方法,只适用与可执行的程序,而下面的方法,不仅可以

用于可执行程序,也可以用于普通的任何文件。前提是知道这个文件名。

首先获得这个程序的完整路径,可以用whereis或者which,然后使用rpm -qf例如:

# whereis ftptop

ftptop: /usr/bin/ftptop /usr/share/man/man1/ftptop.1.gz

# rpm -qf /usr/bin/ftptop

proftpd-1.2.8-1

# rpm -qf /usr/share/doc/proftpd-1.2.8/rfc/rfc0959.txt

proftpd-1.2.8-1

总结:

获得软件包相关的信息用rpm -q,q表示查询query,后面可以跟其他选项,比如

i 表示info,获得软件包的信息;

l 表示list,获得文件列表;

a 表示all,在所有包中执行查询;

f 表示file,根据文件进行相关的查询;

p 表示package,根据软件包进行查询

需要的查询条件可以使用grep产生,或者从"` `"中的命令行产生

6.关于rpm软件包的一些相关知识

1.什么是rpm

rpm 即RedHat Package Management,是RedHat的发明之一

2.为什么需要rpm

在一个操作系统下,需要安装实现各种功能的软件包。这些软件包一般都有各自的

程序,但是同时也有错综复杂的依赖关系。同时还需要解决软件包的版本,以及安装,

配置,卸载的自动化问题。为了解决这些问题,RedHat针对自己的系统提出了一个

较好的办法来管理成千上百的软件。这就是RPM管理系统。在系统中安装了rpm管理系统

以后,只要是符合rpm文件标准的打包的程序都可以方便的安装,升级,卸载

3.是不是所有的linux都使用rpm

任何系统都需要包管理系统,因此很多linux都使用rpm系统。但rpm系统是为RH专门

但是TL,Mandrake等系统也都使用rpm。由于rpm的源程序可以在别的系统上进行编译,

所以有可能在别的系统上也使用rpm

除了rpm,其他一些系统也有自己的软件包管理程序,例如debian的deb包,

slakware也都有自己的包管理系统

4.rpm包的文件名为什么那么长

rpm包的文件名中包含了这个软件包的版本信息,操作系统信息,硬件要求等等。

比如mypackage-1.1-2TL.i386.rpm,其中mypackage是在系统中登记的软件包的名字

1.1是软件的版本号,2是发行号,TL表示用于TL操作系统,还可能是RH等。i386表示

用于intel x86平台,还可能是sparc等。

5.软件包文件名中的i386,i686是什么意思

rpm软件包的文件名中,不仅包含了软件名称,版本信息,还包括了适用的硬件架构

的信息。

i386指这个软件包适用于intel 80386以上的x86架构的计算机(AI32)

i686指这个软件包适用于intel 80686以上(奔腾pro以上)的x86架构的计算机(IA32)

noarch指这个软件包于硬件架构无关,可以通用。

i686软件包的程序通常针对CPU进行了优化,所以,向后兼容比较用以,i386的包在

x86机器上都可以用。向前一般不兼容。不过现在的计算机,奔腾pro以下的CPU已经很少

用,通常配置的机器都可以使用i686软件包

6.不同操作系统发行的rpm包可否混用?

对于已经编译成二进制的rpm包,由于操作系统环境不同,一般不能混用。

对于以src.rpm发行的软件包,由于需要安装时进行本地编译,所以通常可以在不同

系统下安装。

7.使用rpm时遇到的一些特殊问题

Q 我用rpm -e **.rpm无法删除rpm包

A 包名不要包括rpm,

rpm -e 包名,可以包含版本号等信息,但是不可以有后缀.rpm

Q 在MS的系统下有没有读RPM文件的工具?

A wincmd with rpm plugins.....

Q 是否可以通过ftp安装安装升级rpm包?

A 可以。rpm -ivh ftp://xxxxxxxx/PATH2SomeRPM

Q rpm安装时已有的包版本过高怎么办?

A 有时由于安装的软件包太老,而系统中相关的软件包版本比较新,所以可能需要

安装的包依赖的一些文件会找不到。这时有两种解决办法,

第一是在系统文件中找到和需要的文件功能相同或相似的文件,做一个符号链接到

需要的目录下。

第二是下载安装新版本的软件包。

My previous articles on installing PHP on CentOS dealt with installing PHP 5.2.6. I have found this to have some bugs that kill the process without error information. One bug I found, which was on an x86_64 server, was that converting an object to a string did this.

So, I have compiled the latest PHP version, 5.2.10 5.3.0 5.3.1, and put it in my own repository for easy installation. I have compiled it for CentOS 5 i386 and x86_64, and provided the source RPMS in the repo, if anyone wants to compile it for another OS or architecture.

Update 2009-07-03 – I updated the version to PHP 5.3, which was released a few days before. This includes many new features such as closures, namespaces, and packaged scripts in phar files, which I’ll blog about soon. Check out PHP changelog for more details.
Update 2009-09-01 – Added a note about deprecated errors, and how to silence them. Also I have included a tip that might help those of you struggling to install.


I have also included the same php extensions I mentioned in my other article, php-mcrypt, php-mhash, php-mssql and php-tidy

To install, first you must tell rpm to accept rpm’s signed by me, then add the yum repository information to yum:

rpm --import http://repo.webtatic.com/yum/RPM-GPG-KEY-webtatic-andy
wget -P /etc/yum.repos.d/ http://repo.webtatic.com/yum/webtatic.repoNow you can install php by doing:

yum --enablerepo=webtatic install phpOr update an existing installation of php, which will also update all of the other php modules installed:

yum --enablerepo=webtatic update phpIf this does not work correctly, try disabling all other repositories while installing/updating, by adding the –disablerepo=* option. This will stop other dependencies from being installed, so you may want to install them first.

yum --disablerepo=* --enablerepo=webtatic update phpDeprecated Errors
Once you are running the new version, you may get “deprecated” errors in your error logs. This isn’t bad, it just means to tell you that some of the functions you are using are no longer prefered, and may be removed in a future major release. An example of this is the ereg functions. Preg functions are prefered over these, as they are much faster and more powerful, and in all cases do at least the same thing.

If upgrading the functions are not an option, and you would like to hide the deprecated errors from your error log, for example on a production server, just edit your /etc/php.ini file, find the line:

error_reporting  =  E_ALLand replace to:

error_reporting  =  E_ALL & ~E_DEPRECATED


http://www.webtatic.com/blog/2009/06/php-530-on-centos-5/
下载地址:
https://ohse.de/uwe/software/lrzsz.html

章分类:操作系统 关键字: securecrt的sz/rz工具包
CentOS6.5:
sudo yum install lrzsz  
    用习惯了SecureCRT,觉得rz的命令太方便了,但最近遇到一新装的linux服务器,急忙用SecureCRT连上去,发现不能识别rz命令,以前用过几百次,不会错啊,于是在网上查N久,才知道原来要使用SecureCRT的rz命令,要在linux上安装一个工具,具体过程如下:

    Linux系统手动安装rz/sz 软件包

    定制安装的linux可能没有把rzsz包安装到系统,这对用securecrt这样的windows工具传输文件特别不方便。为了使用这个方便的法门,可以手动安装之。

1、下载软件 rzsz-3.34.tar.gz,登录linux,用命令

wget http://freeware.sgi.com/source/rzsz/rzsz-3.48.tar.gz下载。

2、解压 tar zxvf  rzsz-3.34.tar.gz

3、安装cd rzsz-3.34 ; make posix 。注意:这个软件安装与常规的GNU软件不同—没有configure(配置)及make install (安装过程)。先执行命令make,将给出下面的提示:

[root@appuser rzsz]# make

根据自己的系统选择make的位置参数,一般情况下,选posix或linux就可以了。执行命令make posix,我们从输出部分可以很清楚的看见这个步骤所进行的工作:

[root@appuser rzsz]#  make posix

4、为了方便使用这个工具,把相关文件复制到目录/usr/bin下面。这里只需要拷贝2个文件rz及sz,命令为:cp rz sz  /usr/bin.

    ok,大功告成,现在就可以使用SecureCRT的rz命令了。
在大型的web应用中数据库经常成为并发访问的一个瓶颈,为了有效的解决并发访问的瓶颈,利用多台数据库master-slave的模式来增加web的并发访问量。
master-slave模式是为了数据同步的问题。
sqlrelay解决连接池问题以及实现读写分离的均衡负载。
sqlrelay配置3个instance A/B/C,A负责从Master和slave读取数据,B负责写数据,且只写Master,C为router,负责调度应用。
php通过A还是通过B连接数据库。
在实际配置中,由于master承担了读写操作,那么在instance A的配置中,可以把从Master的连接稍微降小,把从slave连接读取数据的连接数稍稍增大以此进行平衡。
一、MySQL master/slave配置
################
#mster/slave配置
################
master:192.168.1.51
slave:192.168.1.50
1、master配置
/etc/my.cnf 中加入
binlog-do-db=book book为数据库名
确保
server-id=1
log-bin=mysql-bin
授权给rep用户进行复制操作
GRANT REPLICATION SLAVE ON book.* TO rep@192.168.1.50 IDENTIFIED BY '123456';
重启master服务
2、配置slave
vi /etc/my.cnf
设置下面4行
server-id       = 2
master-host     =   192.168.1.51
master-user     =   rep
master-password =   123456
重启slave
3、把master的原始数据导入slave。
二、sqlrelay配置
当前行业中比较流行的连接池解决方案几乎都不支持php,经过多番努力终于在找到了一个开源的连接池技术--------sqlrelay。
sqlreplay支持的语言:
C C++ Perl  Python PHP Ruby  Java TCL Zope
sqlreplay支持的数据库:
Oracle MySQL mSQL PostgreSQL Sybase MS SQL Server   IBM DB2 Interbase Sybase SQLite ODBC MS Access
sqlreplay的网站
http://sqlrelay.sourceforge.net/。


基本思路:
1、配置2个实例用以最终处理业务
clubs-read
clubi-write
其中读取的 instance分别配置两个连接,且两个连接启动对等的连接数。
2、配置一个instance来调度读写操作,即clubr
通过router来区分读写连接不同的mysql数据库。
<?xml version="1.0"?>
<!DOCTYPE instances SYSTEM "sqlrelay.dtd">
<instances>
        <!-- club Instance -->
        <instance id="clubs" port="9002" socket="/tmp/clubs.socket" dbase="mysql" connections="10" maxconnections="20" maxqueuelength="5" growby="1" ttl="60" endofsession="commit" sessiontimeout="600" runasuser="nobody" runasgroup="nobody" cursors="5" authtier="listener" handoff="pass" deniedips="" allowedips="" debug="none" maxquerysize="65536" maxstringbindvaluelength="4000" maxlobbindvaluelength="71680" idleclienttimeout="-1" maxlisteners="-1" listenertimeout="0">
                <users>
                        <user user="club" password="edb:club"/>
                </users>
                <connections>
                        <connection connectionid="master51" string="host=192.168.1.51;port=3306;db=book;user=club;password=club;" metric="1" behindloadbalancer="no"/>
                        <connection connectionid="slave50" string="host=192.168.1.50;port=3306;db=book;user=club;password=club;" metric="1" behindloadbalancer="no"/>
                </connections>
        </instance>
        <instance id="clubi" port="9003" socket="/tmp/clubi.socket" dbase="mysql" connections="10" maxconnections="40" maxqueuelength="5" growby="1" ttl="60" endofsession="commit" sessiontimeout="600" runasuser="nobody" runasgroup="nobody" cursors="5" authtier="listener" handoff="pass" deniedips="" allowedips="" debug="none" maxquerysize="65536" maxstringbindvaluelength="4000" maxlobbindvaluelength="71680" idleclienttimeout="-1" maxlisteners="-1" listenertimeout="0">
                <users>
                        <user user="club" password="edb:club"/>
                </users>
                <connections>
                        <connection connectionid="master51" string="host=192.168.1.51;port=3306;db=book;user=club;password=club;" metric="1" behindloadbalancer="no"/>
                </connections>
        </instance


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/rushcc2006/archive/2009/11/07/4775135.aspx
http://www.zendstudio.net/archives/zend-studio-7-1-and-aptana-are-good-brothers/
上面说的都是管理员权限下的安装!!!其余非管理员的用户似乎有问题的,我试了下。


插件下载地址:
http://www.aptana.org/studio/plugin

Aptana Studio 2.0 Plugin Installation Instructions

Eclipse Update Site: Installing via Aptana or Eclipse

Update Site:
http://download.aptana.org/tools/studio/plugin/install/studio

Detailed Directions:

   1. From the Help menu, select Install New Software... to open an Install pop-up window.
   2. In the Work with: text box of the Install window, type the URL http://download.aptana.org/tools/studio/plugin/install/studio for the update site, and hit the Enter key.
   3. In the populated table below, check the box next to the name of the plug-in, and click the Next button.
   4. Click the Next button to go to the license page.
   5. Choose the option to accept the terms of the license agreement, and click the Finish button.

Manual Installation: Download the Plugin Update Site

   1. Download Studio 2.0 Plugin zip.
   2. Open Eclipse distribution, and go to Help -> Install New Software....
   3. Click the Add... button to open the Add Site window.
   4. Click the Archive... button, and select the file saved in step 1.
   5. Select the appropriate plugins to install, and click Next -> Next.
   6. Click the Finish button.

AMD X2 240
斯巴达克 黑潮BA-140 499 這塊主板採用原生AM3 純DDR3內存 . 5相供電

斯巴达克黑潮BA-210集成的显卡(备选)
DDR3 金士顿 4G

宏基19寸 led//新
其余买二手。


http://news.newhua.com/news1/yj_diy/2009/513/0951314194427B15D6AI99ECFBFE0854C90A164JIEDIAE80AIAGK455_3.html?lt=common
新浪微博已开放很久但是无奈一直不提供api.网上也没搜索到相应的,因此风吟自己写了一个函数。可以发送到新浪微博。跟大家分享,希望官方能及早开放API。诞生更多应用.


以下为引用的内容:


<?php
/*
-------------------------------------------------------
@名称:基于CURL的新浪微博接口
@演示:http://demos.fengyin.name/apps/sina-microblog-api.php
@作者:风吟
@博客:http://fengyin.name/
@更新:2009年11月6日 17:15:54
@版权:Copyright (c) 风吟版权所有转载请保留注释,本程序为开源程序(开放源代码)。
只要你遵守 MIT licence 协议.您就可以自由地传播和修改源码以及创作衍生作品.
-------------------------------------------------------
调用方式:
sendmicroblog([帐号],[密码],[内容]);
*/
function sendmicroblog($a, $b, $c) {
    $d = tempnam('./', 'cookie.txt'); //创建随机临时文件保存cookie.
    $ch = curl_init("");
    curl_setopt($ch, CURLOPT_COOKIEJAR, $d);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_TIMEOUT, 10);
    curl_setopt($ch, CURLOPT_USERAGENT, "FengYin");
    curl_exec($ch);
    curl_close($ch);
    unset($ch);
    $ch = curl_init($ch);
    curl_setopt($ch, CURLOPT_URL, "");
    curl_setopt($ch, CURLOPT_REFERER, "");
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, "content=".urlencode($c));
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_COOKIEFILE, $d);
    curl_exec($ch);
    curl_close($ch);
    unlink($d);//删除临时文件.

}
/*
使用方式:
sendmicroblog(我爱新浪 - 通过风吟API发送');
*/
?>

SQL Relay

WEB2.0 jackxiang 2009-12-31 22:06
软件包下载:
http://sqlrelay.sourceforge.net/download.html
http://rudiments.sourceforge.net/download.html


写的比较好的安装url:http://www.linuxsir.org/main/?q=node/144
阅读全文
随着PHP 5.3的发布,这个开源动态语言迎来了近两年来的最重要更新,新版PHP具有一长串新功能,性能得到大大改进。

应该说,PHP 5.3版是一个大于开发者预期的重大版本,加入了最初计划在PHP 6中出现的一些功能。新版PHP将继续扮演与Ruby、Java和.net等多种技术相竞争的开源语言角色。

PHP核心开发人员Ilia Alshanetsky表示,“在新特点和功能方面,PHP 5.3可以说比任何人预想的都要更全面,这主要因为PHP 6推迟发布的原因。因此尽管它发布的时间间隔有些长,但是我认为这种等待是值得的,PHP 5.3是一个汇聚众多开发者心血的优秀作品。”

Alshanetsky表示,与多数重要版本PHP一样,这个版本的PHP引入了众多改进,可以让开发者更简单的使用它。

PHP 5.3简化应用程序部署的方式之一是它支持新命名空间,这是封装类和其它PHP对象的方式之一。

Alshanetsky表示,对PHP开发者来说,命名空间可以带来更清晰的代码和更简单的名称约定。

“目前,多数程序库作者被迫在他们的类和函数名称前加上库名作为前缀,以避免命名冲突问题,有些时候这种做法会带来相当难用的名称,”Alshanetsky表示。“该功能还会简化单一应用程序中多程序库的利用,这些库并不一定必须遵循详细的命名约定,例如在其类/函数名称前加前缀等。”

提速与MySQL的连接

PHP经常被与开源数据库MySQL配合使用来开发Web应用,它们在开源开发工具组合LAMP中是非常重要的一部分。在PHP 5.3中增加了一个名为MySQLInd的新功能,取代了以前的libmysql库,用来连接PHP和MySQL,并拥有优化MySQL性能和内存利用率的可能。

Alshanetsky表示,“当说到数据库时,多数情况下主要的瓶颈并非数据库接口的速度,而是数据库的操作。使用MySQLInd来取代标准的 libmysql,肯定会带来速度的改善,不过我不认为它会让所有应用都提高运行速度。换句话说,使用高度调优MySQL应用的人将会看到新版PHP中更快速、更专用的接口所带来的速度提升。”

总体来说,Alshanetsky预计,通过从目前的PHP5.2转向PHP 5.3,用户应该会看到多数工作流程的性能将提高5%到15%,某些特定工作流程甚至可能看到更高的收益。

E_DEPRECATED标记将被废弃的功能

尽管增加新功能是任何新技术发布的一个关键部分,除此之外PHP 5.3还有自己的特别之处——它明确了哪个功能可能会被取消。

该版本提供了一个名为E_DEPRECATED的新错误代码,让开发者知道哪些特定功能即将从该语言中消失。

Alshanetsky表示,“以前我们曾碰到过这样的问题,我们没有一个明确的错误代码来表示已经不支持的功能,人们很难在错误代码层次上来判断什么功能可能最后被移除。”

通过创建一个专用错误代码来解决这个问题,开发者可以通过使用PHP的错误记录工具来识别自己代码库中的哪一部分还在使用将被移除的功能,因此开发者可以进行相应的调整。

据Alshanetsky表示,PHP开发团队存在一个共识,目前被标记为E_DEPRECATED的功能将在PHP 6中移除。
Linux作为一款成熟而稳定的操作系统,其具备很多的优点。于是大部分人学习Linux操作系统,本文为你介绍Linux下php扩展cURL的安装方法,希望你能学会Linux下php扩展cURL的安装的知识。

方法一

安装cURL

   1. # wget  
   2. http://curl.haxx.se/download/curl-7.17.1.tar.gz  
   3. [url=http://curl.haxx.se/download/curl-7.15.0.tar.gz][/url]  
   4. # tar -zxf curl-7.17.1.tar.gz  
   5. # ./configure –prefix=/usr/local/curl  
   6. # make; make install

安装php
只要打开开关 –with-curl=/usr/local/curl
就可以了。
这个扩展库还是非常棒,是fsockopen等等相关的有效的替代品。

方法二

进入安装原php的源码目录,

   1. cd ext  
   2. cd curl  
   3. phpize  
   4. ./configure –with-curl=DIR   (可以不写dir,如果你的curl安装时没有指定目录)
   5. make
如下:
/php-5.2.14/ext/curl # rpm -ql curl-7.15.1-19.7
/usr/bin/curl
./configure --with-php-config=/usr/local/php/bin/php-config    --with-curl=/usr/bin/

configure: error: Cannot find php-config. Please use --with-php-config=PATH


configure: error: Please reinstall the libcurl distribution -
    easy.h should be in <curl-dir>/include/curl/

Centos:yum -y install curl-devel
就会在PHPDIR/ext/curl/moudles/下生成curl.so的文件。
复制curl.so文件到extensions的配置目录,修改php.ini就好了

以上两种就是Linux下php扩展cURL的安装方法。
----------------------
编译扩展库,分别执行下面的configure和make命令。
[root@vnegar curl]# ./configure --with-php-config=/usr/local/php/bin/php-config
报错如下: checking for cURL in default path... not found configure: error: Please reinstall the libcurl distribution - easy.h should be in /include/curl/
解决办法:yum -y install curl-devel



出现如下报错
checking for cURL in default path... not found
configure: error: Please reinstall the libcurl distribution -
easy.h should be in /include/curl/
其实就是curl的dev包没有安装, 解决方案:
终端下
# yum -y install curl-devel
然后就可以继续了:
依赖如下:
rpm -ihv openssl-devel-0.9.8a-18.26.i586.rpm
rpm -ihv libidn-devel-0.6.0-14.2.i586.rpm
rpm -ihv curl-devel-7.15.1-19.7.x86_64.rpm


Suse Linux 2.6.16.60-0.21 x86_64 编译curl出现:
relocation R_X86_64_32 against `a local symbol' can not be used when making a shared object; recompile with -fPIC
看网上有人说是:
./configure --prefix=/usr/local/confuse CFLAGS=-fPIC --disable-nls
#加这个CFLAGS=-fPIC --disable-nls 是为了解决libconfuse.a: could not read symbols: Bad value

依旧不行,这个URL说到这个问题:http://blog.csdn.net/eroswang/archive/2009/04/14/4073807.aspx
但没有人回复。
虽然是个简单的概念,不过一写成洋文,就变得不容易理解了。

阅读全文

date测试的时候容易出现如下情况,data-s 查询了下,可以实现如下,
date -s "2010-1-1 16:11:21"

但是其他同事也用到date("Y-m-d H:i:s"),就会说:我在调试c程序,是谁修改了服务器时间?我说:我在测试。
于是就有人说没有必要通过date -s来修改整个服务器的时间,而是重写php的该date函数,但是我一旦重写,会提示错误的。
于是又有人说可以关闭掉,date()函数,于是查了下国外的,如下:

Q. I run a small Apache based webserver for my personal use and it is shared with friends and family. However, most script kiddie try to exploit php application such as wordpress using exec() , passthru() , shell_exec() , system() etc functions. How do I disable these functions to improve my php script security?

A. PHP has a lot of functions which can be used to crack your server if not used properly. You can set list of functions in php.ini using disable_functions directive. This directive allows you to disable certain functions for security reasons. It takes on a comma-delimited list of function names. disable_functions is not affected by Safe Mode. This directive must be set in php.ini For example, you cannot set this in httpd.conf.


Open php.ini file:
# vi /etc/php.ini
Find disable_functions and set new list as follows:
disable_functions =exec,passthru,shell_exec,system,proc_open,popen,curl_exec,curl_multi_exec,parse_ini_file,show_source !

Save and close the file. Restart httpd:
# service httpd restart



Warning: date() has been disabled for security reasons in  /*/*/datetest.php on line 5



<?php
function date($str)
{

return "2009-12-11 21:09:35";
}
echo date("Y-m-d H:i:s");

?>

出现:
[/usr/local/tads/htdocs/qdkj/src/view]# php datetest.php

Fatal error: Cannot redeclare date() in /data/*/*/src/view/datetest.php on line 6
I think:
PHP already has a date() function and you cannot overwrite existing functions in this language. Rename your function and it will work. Or wrap it in a class and it will work as well.


于是,我在想啊,现在如果有人在用php的date,我给大家把这个date函数给disable了,大家回不会来找我呢?拭目以待。。。

EOF
^[ \t]*\n
注意\t前有空格符。

下面的操作添加正则表达式,该表达式代表待查找的空行。(技巧提示:空行仅包括空格符、制表符、回车符,且必须以这三个符号之一作为一行的开头,并且以回车符结尾,查找空行的关键是构造代表空行的正则表达式)。

    (1)选择“行首”,则查找内容组合框中出现字符“^”,表示待查找的字符串必须出现在文本中一行的行首,才符合条件。

    (2)选择“范围内的字符”,“^”后增加一对括号“[]”,当前插入点在括号中。括号在正则表达式中表示,文本中的字符匹配括号中任意一个字符即符合查找条件。

    (3)按一下空格键,添加空格符。空格符是空行的一个组成成分。

    (4)选择“制表符”,添加代表制表符的“\t”。

    (5)移动光标,将当前插入点移到“]”之后,然后选择“0或多次匹配”,添加了星号字符“*”。星号表示,其前面的括号“[]”内的空格符或制表符,在一行中出现0个或多个。

    (6)选择“换行”,插入“\n”,表示回车符。

    3.替换内容组合框保持空,表示删除查找到的内容。单击“替换”按钮逐个行删除空行,或单击“全部替换”按钮删除全部空行(注意:EditPlus和UltraEdit均存在全部替换不能一次性完全删除空行的问题,可能是程序BUG,需要多按几次按钮)。

    对于熟悉EditPlus的朋友,可以直接在Find what中输入正则表达式^[ \t]*\n ,注意\t前有空格符
参考来源:
http://info.office.hc360.com/2008/07/11142343729.shtml
**  表示中文:


**1000.txt
**1001.txt
**1002.txt
.
.
.
在Linux下想把中文**去掉,如下:

mv *1001.txt 1001.txt
mv *1002.txt 1002.txt
mv *1003.txt 1003.txt
mv *1004.txt 1004.txt
mv *1005.txt 1005.txt
mv *1006.txt 1006.txt
mv *1007.txt 1007.txt
mv *1008.txt 1008.txt
.
.
.
如何生成如上的语句?
步骤:
1.先出一个统一的文件shell.sh:


mv *1000.txt 1000.txt
mv *1000.txt 1000.txt
mv *1000.txt 1000.txt
mv *1000.txt 1000.txt
mv *1000.txt 1000.txt
mv *1000.txt 1000.txt
mv *1000.txt 1000.txt
mv *1000.txt 1000.txt


2.用awk命令:

num=1000;
cat shell.sh |awk -F"1000" '{print $1 '$num'+NR $2 '$num'+NR  $3}'


生成如下:

mv *1000.txt 1000.txt
mv *1000.txt 1000.txt
mv *1000.txt 1000.txt
mv *1000.txt 1000.txt
mv *1000.txt 1000.txt
mv *1000.txt 1000.txt
mv *1000.txt 1000.txt
mv *1000.txt 1000.txt
.
.
.
分页: 189/272 第一页 上页 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 下页 最后页 [ 显示模式: 摘要 | 列表 ]