服务器上的Nginx和PHP都是源码编译安装的,不支持类似以前的nginx
(start|restart|stop|reload)了。自己动手丰衣足食。以下脚本应该在RHEL, Fedora,
CentOS下都适用。
一、Nginx启动脚本/etc/init.d/nginx
#!/bin/bash
#
# Startup script for Nginx - this script starts and stops the nginx
daemon
#
# chkconfig: - 85 15
# description: Nginx is an HTTP(S) server, HTTP(S) reverse
proxy and IMAP/POP3 proxy server
# processname: nginx
# config:
/usr/local/nginx/conf/nginx.conf
# pidfile:
/usr/local/nginx/logs/nginx.pid
# Source function library.
. /etc/rc.d/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
# Check that networking is up.
[ '$NETWORKING' = 'no' ] && exit 0
nginx='/usr/local/nginx/sbin/nginx'
prog=$(basename $nginx)
&nb
IE6浏览器下只要在CSS属性前加上一个小下划线就行了。
/* 针对IE
6的专属CSS Hack
*/
#id{
_display: block;
}
IE7浏览器下只要在CSS属性前加上一个星号就行了。
| 工具 |
功能描述
|
|
uptime
|
系统平均负载率
|
|
dmesg
|
硬件/系统信息
|
|
top
|
进程进行状态
|
|
iostat
|
CPU和磁盘平均使用率
|
|
vmstat
|
系统运行状态
|
|
sar
|
实时收集系统使用状态
|
|
KDE System Guard
|
图形监控工具
|
|
free
|
内存使用率
|
(2012-01-06 12:00)
这是看到别人的一个文章说明了wordpress的hook机制,很不错!
原文是:http://www.mrmu.com.tw/2011/10/10/wordpress-hook/
稍有接觸過WordPress佈景或外掛客製修改的朋友,對WordPress的Hook機制應該不陌生,但通常剛接觸WordPress
Hook的新手,對其運作原理可能會有點混亂或糢糊。本文針對WordPress
Hook運作大致做個簡單的說明,而預設讀者是理解基本的PHP function語法及運作,但對WordPress
Hook機制不是很明白。
Hook機制裡登場的角色
先從「登場角色」的個別說明開始:
WordPress核心
指的是WordPress內建的程式碼架構,提供WordPress主要的基本功能。
Hook
也許你早已聽說,Hook本身雖是鈎子的意思,但直譯又有點奇怪,所以一般通常都不直譯它,而是直接稱它Hook。WordPress的Hook也可以想像成「鈎子」,這些「鈎子」會埋在WordPress網站中特定幾處的程式碼中,埋進去時使用的語法,其「標示位置」的意義比較大,沒有實質運作的內容。當程式執行到有埋Hook的地方時,它會找出所有對應到自己的Hook
Function (也就是所有「鈎到」該Hook的hook function),並一一執行。
因此若
有一个问题曾经烦扰了我一段时间的,就是关于这个mysql5.5的问题:
这个也老奇怪了,我在windowsXP下面,解包运行起来,本地就是不能连接,但是php却用起来流畅得很,任何客户端(当然,除了mysql.exe和php)都连接不了,总是报错误2003,不能连接服务器,根本就是网络端口没有起来的错误,晕死!(但我phpmyadmin都运行的好好的呢),我尝试用vpc的系统来连接也同样的不行,真服了,winxp下面不能使用mysql5.5的远程连接了??(mysql5.0和5.1可是没有任何问题的,我之前就是5.1的,一直很正常,就是5.5不行!但还好,通过php还是可以用,~~就是老别扭了)
现在才知道,这是因为MySQL5.5数据库默认是不允许这些工具远程连接的,解决的方法是:
找到my.ini这个文件,将
[mysqld]
bind-address=127.0.0.1 改为
bind-address=0.0.0.0
(注意:这是允许任意IP连接哦!要不就设为你要连接的那个IP了)
还有,如果没有这一条(一般的mysql
1、依赖库和开发工具
yum -y
install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng
libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib
zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel
ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel
krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap
openldap-devel nss_ldap openldap-clients
openldap-servers
里面包含了curl、ldap、mcrypt、bzip等等内容,安装自己要求进行取舍了,下面继续:
yum -y install pcre-devel gd-devel bison automake zlib*
libxml* libtool-ltdl-devel*
2、把文件放web目录下面,建立这个目录
mkdir /web
cd /web
3、取得源安装文件
wget http://cn.php.net/di
根据网络上的文档在centos5.6上进行了一下red5的安装测试,red5的官方安装说明太简短,基本不可用;而其他的文档也不是缺这就是少那的,我就把几个文档合并一下,做一个完整的说明:
1)安装java6的环境
这个直接yum就可以了
yum -y install java-1.6.0-openjdk
java-1.6.0-openjdk-devel
2)安装subversion
为得到合适的版本,里面我用到svn,先安装svn:
yum install svn
这个看你的发布源中有没有了,我是没有,就用了
yum install subversion
3)安装ant和ivy,apache的项目
需要说明的是,yum可以安装ant的,但是安装后用起来总是出问题的,可能是不完整吧!
还是用下载项目文件的方式进行安装,源文件放在usr的src目录下面:
cd /usr/src
wget
http://mirrors.isu.net.sa/pub/apache//ant/binaries/apache-ant-1.8.2-bin.tar.bz2
tar jxvf apache-ant-1.8.2-bin.tar.bz2
mv apache-ant-1.8.2 /usr/local/ant
svn co
对于使用Redhat Enterprise Linux 或Fedora Core /CentOS
的用户,一定会为Apache经常无法正常运转,报以'Permission denied'等错误而大为不解,甚至大为恼火。
一般来说,问题是:
1、httpd.conf 设置错误,比如是不是设定的访问限制了、设定不允许列表目录而目录没有设定首页的时候去访问首页了;
2、权限问题,文件和目录的权限是不是对了,一般来说设定为apache的专用访问用户,比如apache,是很好的办法;而设定文件和目录的权限到755也是可以解决问题的手段;
如果以上都做了,就是访问不了,或者老是莫名其妙的403,那或许就是因为系统里激活了SELinux,而用户的apache配置与SELinux的配置策略有抵触产生的,只有通过适当调整,使apache的配置和访问符合策略才能正常使用。
现在下面来分析一下SELinux中有关httpd(apache)的context定义(略有删节)
/home/[^/]+/((www)|(web)|(public_html))(/.+)?
system_u:object_r:httpd_user_content_t
/var/www(/.*)?
system_u:object_r:httpd_sys_content_t
1、安装:就是用centos的yum了
yum install vsftpd
2、启动服务:直接用service命令
service vsftpd start
3、新增加系统用户,并且不允许其在服务器登录:
useradd -d /home/ftpuser -s /sbin/nologin
ftpuser
其中/home/ftpuser 是用户登录的目录 ftpuser是用户名,根据自己的需要修改
4、设定目录和文件的属主,只允许相应用户访问此目录(这里用上面的ftpuser)
chown -R ftpuser
/home/ftpuser
5、更改新增目录的权限(这里用上面的/home/ftpuser,给予了777的完全权限)
chmod 777 -R
/home/ftpuser
6、为新加的用户设置密码
passwd ftpuser
7、修改vsftpd.conf 禁止匿名帐号登陆及允许自建帐号登陆:
vi /etc/vsftpd/vsftpd.conf
文件内容:
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
本来是用VPC安装了一个Centos作为开发环境和测试环境进行WEB程序编写调试的,但是用起来有几个问题一直在纠缠着:
1、VPC运行起来对计算机资源的占有还是太大,机器反应迟钝;
2、centos里面进行编辑工作本身就是一个极其繁琐的事情,因为对中文的支持本身就比较弱,而文字输入编辑等等操作起来都远比在windows环境复杂,别扭;
3、不管怎样还是win顺手,这即便是心理上也更加觉得自然些;而Linux还是仅仅适合于作为服务器使用。
所以,我最后还是决定在本地恢复web开发环境,想一想,搭建IIS的FCGI环境需要安装.net环境,这个我很不愿意(因为这个环境太大了,130M的安装文件,安装个半天,我又特别不喜欢在自己的机器上搞个臃肿的身躯,而且相对之下我个人很不喜欢MS那专横跋扈的开发环境理念),于是,我还是下载了apache2.2.21,这个小巧,才5M,比起IIS来又简单有好用(直接下载解包即可用,舒服,呵呵)。
但是,要启用CGI嘛?就出问题了,我下载了mod_Fcgid2.3.6,经过测试,却发现mod_Fcgid2.3.6+apache2.2.21+php5.3.8在winXP环境下面并不稳定,动不动出现500错误,查询了网上信息,