存档

  • solaris 编译安装nginx+php5.3.8(php-fpm)

    历史记录: 2011-12-19 修改,添加 fastcgi_intercept_errors on;当请求一个不存在的php页面时原来返回空,添加后返回404错误。 php从5.3.3版本开始内置FPM(FastCGI 进程管理器),用于替换PHP FastCGI的大部分附加功能,对于高负载网站是非常有用的。 它的功能包括: 支持平滑停止/启动的高级进程管理功能; 可以工作于不同的uid/gid/chroot环境下,并监听不同的端口和使用不同的php.ini配置文件(可取代safe_mode的设置); stdout 和 stderr 日志记录; 在发生意外情况的时候能够重新启动并缓存被破坏的opcode; 文件上传优化支持; “慢日志” – 记录脚本 (不仅记录文件名,还记录PHP backtrace信息,可以使用ptrace或者类似工具读取和分析远程进程的运行数据) 运行所导致的异常缓慢; fastcgi_finish_request() – 特殊功能:用于在请求完成和刷新数据后,继续在后台执行耗时的工作 (录入视频转换、统计处理等); 动态/静态子进程产生; FPM带来的好处还远不止这些,在此种模式下php本身对apache和nginx等web服务器的依赖程度也更低,服务器软件主要起到请求转发的功能,即将用户的请求转发到FPM监听的端口,php处理后返回结果供web显示。因此选用更轻量级以及并发处理更高的nginx做web服务器成为首选。   一下为本人在solaris10  x86机器上的安装记录: 1.下载并安装pkg-get工具: wget http://sunfreeware.com/BOLTpget.pkg pkgadd -d BOLTpget.pkg 2.在线更新php依赖库: pkg-get install gd-2.0.35 pkg-get install jpeg-8a pkg-get install libpng-1.2.10 pkg-get install libiconv-1.9.2 pkg-get install openssl-1.0.0e pkg-get [...]

    2011年11月26日 | 归档于 PHP/Python/C, web服务器
    标签: ,
  • Centos Vsftpd 详细配置

    获取并安装vsftpd:wget ftp://vsftpd.beasts.org/users/cevans/vsftpd-2.1.0.tar.gz tar zxvf vsftpd-2.1.0.tar.gz cd vsftpd-2.1.0 make make install 复制配置文件到 /etc/中:cp vsftpd.conf /etc 启动vsftpd:vsftpd有两种启动方式 自启动或者由xinetd服务启动 修改配置文件中的listen可以设置启动方式 listen=YES则为自启动,NO则由xinetd启动。 值得注意的是采用自启动的方式命令:/usr/local/sbin/vsftpd启动后当前终端会被占据。 本文采用由xinetd服务方式启动:service xinetd start vsftp有三种访问方式:匿名用户,本地用户和虚拟用户。这里只介绍最现实也是最常用的 方式:虚拟用户。这种方式的安全性和实用性是最高的。 查看db4:rpm -qa db4 db4-4.3.29-9.fc6 建立一个/etc/vsftpd/user.txt的文件,单行为用户名,双行为密码. mytest 123456 5.db_load -T -t hash -f /etc/vsftpd/user.txt /etc/vsftpd_login.db chmod 600 /etc/vsftpd_login.db 6.vi /etc/pam.d/ftp.virtual auth required /lib/security/pam_userdb.so db=/etc/vsftpd_login account required /lib/security/pam_userdb.so db=/etc/vsftpd_login 7.编写配置文件 guest_enable=YES guest_username=virtual //这两行的意思是采用虚拟用户形式 [...]

    2011年5月14日 | 归档于 Linux技术, web服务器
    标签: ,
  • 编译apache出现:libtool: install: error: cannot install `libaprutil-1.la’

    如果你所用的源码不是第一次被编译,那么重新解压一个新的包,再编译,问题可能会被解决。

    2011年5月14日 | 归档于 web服务器, 其它相关
  • 启动APACHE出现“error while loading shared libraries: libiconv.so.2”错误

    启动,出现如下错误: error while loading shared libraries: libiconv.so.2: cannot open shared object file: No such file or directory 在/usr/local/lib下可以找到libiconv.so.2 。 解决方法: 在/etc/ld.so.conf中加一行/usr/local/lib,运行”/sbin/ldconfig。此时启动apache就OK。

    2011年5月14日 | 归档于 web服务器
  • solaris编译php mcrypt扩展

    类unix系统中编译php支持mcrypt扩展,常规的方法是下载安装包,先安装完libmcrypt,再编译php的时候加上–with- mcrypt=/path-to-libmcrypt/,但这种安装方式在solaris下会出现安装完phpinfo中有mcrypt选项,但是在 php中却无法使用的现象。 初步认为是在solaris中mcrypt扩展无法自动完全加载和配置。随意在编译libmcrypt包时需要额外指定一些配置: ./configure –enable-dynamic-loading –with-included-algos=”rijndael-128 arcfour stream cbc cfb” make make install php 编译参数加上  –with-mcrypt=/usr/local/lib –disable-posix-threads –with-included-algos是指定mcrypt要支持的什么模式,示例中的配置便可以支持php的des和3des加密。

    2011年5月14日 | 归档于 Linux技术, PHP/Python/C, web服务器
    标签:
  • nginx前端负载,后端apache获取真实IP设置

    网站最前端是nginx,做的PROXY来转发请求到后端的apache上,所以获取的IP 都是NGINX PROXY 机器的IP,这对于分析和记录apache日志等很多基于IP判断的PHP程序都会出现一系列的问题,经过以下两处理便可让apache获取 正式的访问地址: 1.修改NGINX的配置文件NGINX.CONF 在里面加上 proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 上面的设置能保证nginx把正确的ip转发到后端。 2.设置apache接受转发来的真实IP 说明:http://stderr.net/apache/rpaf/ 下载:http://stderr.net/apache/rpaf/download/ 上面的扩展能保证apache能正常接受转发来的真实IP. # tar zxvf mod_rpaf-0.6.tar.gz # cd mod_rpaf-0.6 # /usr/local/www/apache/bin/apxs -i -c -n mod_rpaf-2.0.so mod_rpaf-2.0.c 接 着在 httpd.conf中添加 LoadModule rpaf_module modules/mod_rpaf-2.0.so RPAFenable On RPAFsethostname On RPAFproxy_ips 172.150.48.1    # 填写Nginx的来访IP RPAFheader X-Forwarded-For

    2011年5月14日 | 归档于 web服务器
  • apache多ip多域名虚拟主机设定

    以下只设置监听所有80端口 NameVirtualHost *:80 ServerAdmin webmaster@dummy-host2.example.com DocumentRoot “/usr/local/apache2/htdocs” ServerName 172.150.55.11 ErrorLog “logs/172.150.55.11-error_log” CustomLog “logs/172.150.55.11-access_log” common ServerAdmin webmaster@dummy-host2.example.com DocumentRoot “/usr/local/apache2/htdocs” ServerName 119.163.122.34 ErrorLog “logs/119.163.122.34-error_log” CustomLog “logs/119.163.122.35-access_log” common ServerAdmin webmaster@dummy-host2.example.com DocumentRoot “/usr/local/apache2/htdocs/blog” ServerName blog.xxx.com ErrorLog “logs/blog-xxx-com-error_log” CustomLog “logs/blog-xxx-com-access_log” common

    2011年5月14日 | 归档于 web服务器
    标签:
‘web服务器’ 分类的存档