<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></title> 
<link>https://jackxiang.com/index.php</link> 
<description><![CDATA[赢在IT，Playin' with IT,Focus on Killer Application,Marketing Meets Technology.]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></copyright>
<item>
<link>https://jackxiang.com/post//</link>
<title><![CDATA[ Freebsd7.2架设Nginx+PHP5+Zend]]></title> 
<author>jack &lt;xdy108@126.com&gt;</author>
<category><![CDATA[WEB2.0]]></category>
<pubDate>Fri, 18 Sep 2009 02:50:58 +0000</pubDate> 
<guid>https://jackxiang.com/post//</guid> 
<description>
<![CDATA[ 
	大家都说Nginx比Apache要快，那为什么Nginx的性能要比Apache高得多？这得益于Nginx使用了最新的epoll（Linux 2.6内核）和kqueue（freebsd）网络I/O模型，而Apache则使用的是传统的select模型。目前Linux下能够承受高并发访问的Squid、Memcached都采用的是epoll网络I/O模型。 <br/><br/>　　处理大量的连接的读写，Apache所采用的select网络I/O模型非常低效。下面用一个比喻来解析Apache采用的select模型和Nginx采用的epoll模型进行之间的区别： <br/><br/>　　假设你在大学读书，住的宿舍楼有很多间房间，你的朋友要来找你。select版宿管大妈就会带着你的朋友挨个房间去找，直到找到你为止。而epoll版宿管大妈会先记下每位同学的房间号，你的朋友来时，只需告诉你的朋友你住在哪个房间即可，不用亲自带着你的朋友满大楼找人。如果来了10000个人，都要找自己住这栋楼的同学时，select版和epoll版宿管大妈，谁的效率更高，不言自明。同理，在高并发服务器中，轮询I/O是最耗时间的操作之一，select和epoll的性能谁的性能更高，同样十分明了。 <br/><br/>FreeBSD7.2l架设nginx+php+zend <br/>本文用ports安装方式 <br/>1、安装php5 <br/>cd /usr/ports/lang/php <br/>make config <br/>[X] CLI Build CLI version <br/>[X] CGI Build CGI version <br/>[ ] APACHE Build Apache module <br/>[ ] DEBUG Enable debug <br/>[X] SUHOSIN Enable Suhosin protection system (not for jails) <br/>[X] MULTIBYTE Enable zend multibyte support <br/>[ ] IPV6 Enable ipv6 support <br/>[ ] REDIRECT Enable force-cgi-redirect support (CGI only) <br/>[ ] DISCARD Enable discard-path support (CGI only) <br/>[X] FASTCGI Enable fastcgi support (CGI only) <br/>[X] PATHINFO Enable path-info-check support (CGI only) <br/>然先执行安装 <br/>make install clean <br/>cp /usr/local/etc/php.ini-dist /usr/local/etc/php.ini <br/><br/>2、安装php5-extensions <br/>cd /usr/ports/lang/php5-extensions <br/>make config <br/>[X] BCMATH bc style precision math functions <br/>[X] BZ2 bzip2 library support <br/>[X] CALENDAR calendar conversion support <br/>[X] CTYPE ctype functions <br/>[X] CURL CURL support <br/>[ ] DBA dba support <br/>[ ] DBASE dBase library support <br/>[X] DOM DOM support <br/>[X] EXIF EXIF support <br/>[X] FILEINFO fileinfo support <br/>[X] FRIBIDI FriBidi support <br/>[ ] FTP FTP support <br/>[X] GD GD library support <br/>[X] GETTEXT gettext library support <br/>[ ] GMP GNU MP support <br/>[X] HASH HASH Message Digest Framework <br/>[X] ICONV iconv support <br/>[ ] IMAP IMAP support <br/>[ ] INTERBASE Interbase 6 database support (Firebird) <br/>[X] JSON JavaScript Object Serialization support <br/>[ ] LDAP OpenLDAP support <br/>[X] MBSTRING multibyte string support <br/>[X] MCRYPT Encryption support <br/>[X] MHASH Crypto-hashing support <br/>[X] MING ming shockwave flash support <br/>[ ] MSSQL MS-SQL database support <br/>[X] MYSQL MySQL database support <br/>[ ] MYSQLI MySQLi database support <br/>[X] NCURSES ncurses support (CLI only) <br/>[ ] ODBC unixODBC support <br/>[ ] OPENSSL OpenSSL support <br/>[X] PCNTL pcntl support (CLI only) <br/>[X] PCRE Perl Compatible Regular Expression support <br/>[ ] PDF PDFlib support (implies GD) <br/>[X] PDO PHP Data Objects Interface (PDO) <br/>[X] PDO_SQLITE PDO sqlite driver <br/>[ ] PGSQL PostgreSQL database support <br/>[ ] POSIX POSIX-like functions <br/>[X] PSPELL pspell support <br/>[X] READLINE readline support (CLI only) <br/>[X] RECODE recode support <br/>[X] SESSION session support <br/>[X] SHMOP shmop support <br/>[X] SIMPLEXML simplexml support <br/>[ ] SNMP SNMP support <br/>[X] SOAP SOAP support <br/>[X] SOCKETS sockets support <br/>[X] SPL Standard PHP Library <br/>[ ] SQLITE sqlite support <br/>[X] SYBASE_CT Sybase database support <br/>[ ] SYSVMSG System V message support <br/>[ ] SYSVSEM System V semaphore support <br/>[ ] SYSVSHM System V shared memory support <br/>[X] TIDY TIDY support <br/>[X] TOKENIZER tokenizer support <br/>[ ] WDDX WDDX support (implies XML) <br/>[X] XML XML support <br/>[X] XMLREADER XMLReader support <br/>[ ] XMLRPC XMLRPC-EPI support <br/>[X] XMLWRITER XMLWriter support <br/>[ ] XSL XSL support (Implies DOM) <br/>[ ] YAZ YAZ support (ANSI/NISO Z39.50) <br/>[ ] ZIP ZIP support <br/>[X] ZLIB ZLIB support <br/>make install clean <br/><br/>3、安装ZendOptimizer <br/>上传zend使用源码包方式安装 <br/>解压 <br/>tra -zxvf ZendOptimizer-3.3.3-freebsd6.0-i386.tar.gz <br/>cd ZendOptimizer-3.3.3-freebsd6.0-i386 <br/>使用命令行方式安装并先运行以下ln的内容，以免安装出错。 <br/>ln -s /usr/lib/libc.so /usr/lib/libc.so.6 <br/>ln -s /usr/lib/libcrypt.so /usr/lib/libcrypt.so.3 <br/>ln -s /usr/lib/libutil.so /usr/lib/libutil.so.5 <br/>ln -s /usr/lib/libm.so /usr/lib/libm.so.4 <br/>./install-tty <br/>安装过程中的提示全默认就可以，到apache web server选no <br/><br/>4、安装lighttpd <br/>make config <br/>去掉所有选项不需要配置lighttpd任何东西只为得到fastcgi支持php <br/>cd /usr/ports/www/lighttpd/ <br/>make install clean <br/><br/>5、安装nginx <br/>cd /usr/ports/www/nginx <br/>make config <br/>选上所有与http有关的其它去掉 <br/>make install clean <br/>在/etc/rc.conf中加入以下内容以使spawn-fcgi开机自启动 <br/>/usr/local/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -u www -g www -C 4 -f /usr/local/bin/php-cgi <br/>为了使SCRIPT_FILENAME 有效，更改php.ini里面的cgi.fix_pathinfo=1； <br/><br/>配置nginx.conf <br/>ee /usr/local/etc/nginx/nginx.conf <br/>--------------------------------------------------- <br/>#user nobody; <br/>user www; <br/>worker_processes 1; <br/><br/>#error_log logs/error.log; <br/>#error_log logs/error.log notice; <br/>#error_log logs/error.log info; <br/><br/>#pid logs/nginx.pid; <br/><br/><br/>events &#123; <br/>worker_connections 1024; <br/>&#125; <br/><br/><br/>http &#123; <br/>include mime.types; <br/>default_type application/octet-stream; <br/><br/>#log_format main '$remote_addr - $remote_user [$time_local] $request ' <br/># '"$status" $body_bytes_sent "$http_referer" ' <br/># '"$http_user_agent" "$http_x_forwarded_for"'; <br/><br/>#access_log logs/access.log main; <br/><br/>sendfile on; <br/>#tcp_nopush on; <br/><br/>#keepalive_timeout 0; <br/>keepalive_timeout 65; <br/><br/>#gzip on; <br/><br/>server &#123; <br/>listen 80; <br/>server_name localhost; <br/><br/>#charset koi8-r; <br/><br/>#access_log logs/host.access.log main; <br/><br/>location / &#123; <br/>root /usr/local/www/nginx; <br/>index index.php index.html index.htm; <br/>&#125; <br/><br/>#error_page 404 /404.html; <br/><br/># redirect server error pages to the static page /50x.html <br/># <br/>error_page 500 502 503 504 /50x.html; <br/>location = /50x.html &#123; <br/>root /usr/local/www/nginx-dist; <br/>&#125; <br/><br/># proxy the PHP scripts to Apache listening on 127.0.0.1:80 <br/># <br/>#location ~ &#92;.php$ &#123; <br/># proxy_pass http://127.0.0.1; <br/>#&#125; <br/><br/># pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 <br/># <br/>location ~ &#92;.php$ &#123; <br/># root html; <br/>fastcgi_pass 127.0.0.1:9000; <br/>fastcgi_index index.php; <br/># fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; <br/>fastcgi_param SCRIPT_FILENAME //usr/local/www/nginx$fastcgi_script_name; <br/>include fastcgi_params; <br/>&#125; <br/><br/># deny access to .htaccess files, if Apache's document root <br/># concurs with nginx's one <br/># <br/>#location ~ /&#92;.ht &#123; <br/># deny all; <br/>#&#125; <br/>&#125; <br/><br/><br/># another virtual host using mix of IP-, name-, and port-based configuration <br/># <br/>#server &#123; <br/># listen 8000; <br/># listen somename:8080; <br/># server_name somename alias another.alias; <br/><br/># location / &#123; <br/># root html; <br/># index index.html index.htm; <br/># &#125; <br/>#&#125; <br/><br/><br/># HTTPS server <br/># <br/>#server &#123; <br/># listen 443; <br/># server_name localhost; <br/><br/># ssl on; <br/># ssl_certificate cert.pem; <br/># ssl_certificate_key cert.key; <br/><br/># ssl_session_timeout 5m; <br/><br/># ssl_protocols SSLv2 SSLv3 TLSv1; <br/># ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP; <br/># ssl_prefer_server_ciphers on; <br/><br/># location / &#123; <br/># root html; <br/># index index.html index.htm; <br/># &#125; <br/>#&#125; <br/><br/>&#125; <br/>------------------------------END----------------------------------- 
]]>
</description>
</item><item>
<link>https://jackxiang.com/post//#blogcomment</link>
<title><![CDATA[[评论]  Freebsd7.2架设Nginx+PHP5+Zend]]></title> 
<author> &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate> 
<guid>https://jackxiang.com/post//#blogcomment</guid> 
<description>
<![CDATA[ 
	
]]>
</description>
</item>
</channel>
</rss>