LinuxNginxPhp架设高性能WEB服务器_百度文库_第1页
LinuxNginxPhp架设高性能WEB服务器_百度文库_第2页
LinuxNginxPhp架设高性能WEB服务器_百度文库_第3页
LinuxNginxPhp架设高性能WEB服务器_百度文库_第4页
LinuxNginxPhp架设高性能WEB服务器_百度文库_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Linux+Nginx+Php架设高性能WEB服务器Nginx ("engine x" 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器 。 Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,它已经在该站点运行超过两年半了。Igor 将源代码以类BSD许可证的形式发布。尽管还是测试版,但是,Nginx 已经因为它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名了。本文是在成功架设Nginx+Php Web服务器之后的一个总结,成功设置Nginx开启多域名多站点,并且

2、不会出现502 Bad Gateway错误!本文测试环境如下:系统环境:Linux version 2.6.9(CentOS release 4.7(Final)软件环境:nginx-0.6.35.tar.gz当前稳定版: Nginx 0.6.35 官方Wiki:官方下载:http:/sysoev.ru/nginx/nginx-0.6.35.tar.gzphp-5.2.9.tar.gz官方下载:php-5.2.9-fpm-0.5.10.diff.gz官方下载:/downloads/archive/mysql

3、-5.1.34.tar.gzlibiconv-1.13.tar.gzlibmcrypt-2.5.8.tar.gzmcrypt-2.6.8.tar.gzmhash-.tar.gzNginx0.6.35+Php5.2.9所有相关安装包下载 安装步骤一、 编译安装PHP5.2.9所需的支持库tar zxvf libiconv-1.13.tar.gzcd libiconv-1.13/./configure -prefix=/usr/localmakemake installcd ./tar zxvf libmcrypt-2.5.8.tar.gzcd libmcrypt-2.5.8/./c

4、onfiguremakemake install/sbin/ldconfigcd libltdl/./configure -enable-ltdl-installmakemake installcd ././tar zxvf mhash-.tar.gzcd mhash-/./configuremakemake installcd ./ln -s /usr/local/lib/libmcrypt.la /usr/lib/libmcrypt.laln -s /usr/local/lib/libmcrypt.so /usr/lib/libmcrypt.soln -s /u

5、sr/local/lib/libmcrypt.so.4 /usr/lib/libmcrypt.so.4ln -s /usr/local/lib/libmcrypt.so.4.4.8 /usr/lib/libmcrypt.so.4.4.8ln -s /usr/local/lib/libmhash.a /usr/lib/libmhash.aln -s /usr/local/lib/libmhash.la /usr/lib/libmhash.laln -s /usr/local/lib/libmhash.so /usr/lib/libmhash.soln -s /usr/local/lib/libm

6、hash.so.2 /usr/lib/libmhash.so.2ln -s /usr/local/lib/libmhash.so.2.0.1 /usr/lib/libmhash.so.2.0.1tar zxvf mcrypt-2.6.8.tar.gzcd mcrypt-2.6.8/sbin/ldconfig./configuremakemake installcd ./二、编译安装MySQL 5.1.34扩展库/usr/sbin/groupadd mysql/usr/sbin/useradd -g mysql mysqltar zxvf mysql-5.1.34.tar.gzcd mysql-

7、5.1.34/./configure -prefix=/usr/local/webapp/mysql/ -enable-assembler -with-extra-charsets=complex -enable-thread-safe-client -with-big-tables -with-readline -with-ssl -with-embedded-server -enable-local-infile -with-plugins=innobasemake && make installchmod +w /usr/local/webapp/mysqlchown -

8、R mysql:mysql /usr/local/webapp/mysqlcd ./MySql的安装此处就省略三、编译安装PHP(FastCGI模式)tar zxvf php-5.2.9.tar.gzgzip -cd php-5.2.9-fpm-0.5.10.diff.gz | patch -d php-5.2.9 -p1cd php-5.2.9/./configure -prefix=/usr/local/webapp/php -with-config-file-path=/usr/local/webapp/php/etc -with-mysql=/usr/local/webapp/mysq

9、l -with-mysqli=/usr/local/webapp/mysql/bin/mysql_config -with-iconv-dir=/usr/local -with-freetype-dir -with-jpeg-dir -with-png-dir -with-zlib -with-libxml-dir=/usr -enable-xml -disable-rpath -enable-discard-path -enable-safe-mode -enable-bcmath -enable-shmop -enable-sysvsem -enable-inline-optimizati

10、on -with-curl -with-curlwrappers -enable-mbregex -enable-fastcgi -enable-fpm -enable-force-cgi-redirect -enable-mbstring -with-mcrypt -with-gd -enable-gd-native-ttf -with-openssl -with-mhash -enable-pcntl -enable-sockets -with-ldap -with-ldap-saslmake ZEND_EXTRA_LIBS='-liconv'make installcp

11、php.ini-dist /usr/local/webapp/php/etc/php.inicd ./四、修改php-fpm配置文件rm -f /usr/local/webapp/php/etc/php-fpm.confvi /usr/local/webapp/php/etc/php-fpm.conf输入以下内容:/usr/local/webapp/php/logs/php-fpm.pid /usr/local/webapp/php/logs/php-fpm.log notice 10 1m 5s yes default :9000 -1 0666 /usr/sbin/sen

12、dmail -t -i 1 www www static 128 20 5 35 0s 0s logs/slow.log 51200 0 yes 500 $HOSTNAME /usr/local/bin:/usr/bin:/bin /tmp /tmp /tmp $OSTYPE $MACHTYPE 2 五、创建www用户组及www用户/usr/sbin/groupadd www/usr/sbin/useradd -g www www六、编译安装Nginxtar zxvf nginx-0.6.35.tar.gzcd nginx-0.6.35/默认安装:./configurema

13、ke && make install默认情况下,Nginx 会被安装在 /usr/local/nginx。通过设定编译选项,你可以改变这个设定。指定编译选项安装,如:./configure -user=www -group=www -prefix=/usr/local/webapp/nginx -with-http_stub_status_module -with-http_ssl_modulemake && make installcd ./七、创建fcgi.conf文件:rm -f /usr/local/webapp/nginx/conf/fcgi.conf

14、vi /usr/local/webapp/nginx/conf/fcgi.conf输入以下内容:fastcgi_param GATEWAY_INTERFACE CGI/1.1;fastcgi_param SERVER_SOFTWARE nginx;fastcgi_param QUERY_STRING $query_string;fastcgi_param REQUEST_METHOD $request_method;fastcgi_param CONTENT_TYPE $content_type;fastcgi_param CONTENT_LENGTH $content_length;fast

15、cgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;fastcgi_param SCRIPT_NAME $fastcgi_script_name;fastcgi_param REQUEST_URI $request_uri;fastcgi_param DOCUMENT_URI $document_uri;fastcgi_param DOCUMENT_ROOT $document_root;fastcgi_param SERVER_PROTOCOL $server_protocol;fastcgi_param REMOTE_A

16、DDR $remote_addr;fastcgi_param REMOTE_PORT $remote_port;fastcgi_param SERVER_ADDR $server_addr;fastcgi_param SERVER_PORT $server_port;fastcgi_param SERVER_NAME $server_name;# PHP only, required if PHP was built with -enable-force-cgi-redirectfastcgi_param REDIRECT_STATUS 200;八、编辑Nginx配置文件rm -f /usr/

17、local/webapp/nginx/conf/nginx.confvi /usr/local/webapp/nginx/conf/nginx.conf输入以下内容:user www www;worker_processes 8;error_log /usr/local/webapp/nginx/logs/logs/nginx_error.log crit;pid /usr/local/webapp/nginx/logs/nginx.pid;worker_rlimit_nofile 51200;events use epoll;worker_connections 51200;http inc

18、lude mime.types;default_type application/octet-stream;charset utf-8;server_names_hash_bucket_size 128;client_header_buffer_size 32k;large_client_header_buffers 4 32k;client_max_body_size 8m;sendfile on;tcp_nopush on;keepalive_timeout 60;tcp_nodelay on;fastcgi_connect_timeout 300;fastcgi_send_timeout

19、 300;fastcgi_read_timeout 300;fastcgi_buffer_size 64k;fastcgi_buffers 8 64k;fastcgi_busy_buffers_size 128k;fastcgi_temp_file_write_size 128k;gzip on;gzip_min_length 1k;gzip_buffers 4 16k;gzip_http_version 1.0;gzip_comp_level 2;gzip_types text/plain application/x-javascript text/css application/xml;g

20、zip_vary on;#limit_zone crawler $binary_remote_addr 10m;#多个站点设置,站点文件夹必须放在Nginx的html目录,否则不支持多站点server listen 80;server_name www.v-;root /usr/local/webapp/nginx/html/www.v-;index index.php index.html;location .*.(php|php5?$ #fastcgi_pass unix:/tmp/php-cgi.sock;fastcgi_pass :9000;fastcgi_index

21、 index.php;include fcgi.conf;location .*.(gif|jpg|jpeg|png|bmp|swf$ expires 30d;location .*.(js|css?$ expires 6h; log_format veclog '$remote_addr - $remote_user $time_local "$request" ''$status $body_bytes_sent "$http_referer" ''"$http_user_agent" $h

22、ttp_x_forwarded_for'access_log logs/vec.log veclog;#多个站点设置,站点文件夹必须放在Nginx的html目录,否则不支持多站点server listen 80;server_name ;root /usr/local/webapp/nginx/html/;index index.php index.html;location .*.(php|php5?$ #fastcgi_pass unix:/tmp/php-cgi.sock;fastcgi_pass :9000;fastcgi_index index.php;include fcgi.conf;location .*.(gif|jpg|jpeg|png|bmp|swf$ expires 30d;location .*.(js|css?$ expires 6h; log_format w3cclog '$remote_addr - $remote_user $time_local &q

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论