亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 5558 | 回復(fù): 3
打印 上一主題 下一主題

[Web] 初次體驗(yàn):nginx+php+fastcg+xcache+mysql+openx [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2008-06-18 23:03 |只看該作者 |倒序?yàn)g覽
nginx+php+fastcg+xcache+mysql+openx說明:本文是使用nginx 安裝廣告發(fā)布系統(tǒng)openx2.4
其中參考文檔:張宴BLOG  linuxtone.org論壇文檔 官方文檔
同文發(fā)表在:http://www.linuxtone.org/thread-441-1-1.html
http://liuyu.blog.51cto.com/183345/82841
及CU個(gè)人空間

下次將寫為什么我們需要使用nginx 它有那此功能,與apache相比優(yōu)勢在那。

Nginx ("engine x") 是一個(gè)高性能的 HTTP 和反向代理服務(wù)器,也是一個(gè) IMAP/POP3/SMTP 代理服務(wù)器。 Nginx 是由 Igor Sysoev 為俄羅斯訪問量第二的 Rambler.ru 站點(diǎn)開發(fā)的,它已經(jīng)在該站點(diǎn)運(yùn)行超過兩年半了。Igor 將源代碼以類BSD許可證的形式發(fā)布。
Nginx官方wiki:[url=http://wiki.codemongers.com/NginxChs]http://wiki.codemongers.com/NginxChs[/url]
openx官方首頁:[url=http://www.openx.org/]http://www.openx.org[/url]
php-fpm官網(wǎng):[url=http://php-fpm.anight.org/index.html]http://php-fpm.anight.org/index.html[/url]

本文安裝環(huán)境:
os:rh8 ,centos5
kernel:2.6

相關(guān)軟件包:libjpeg libpng freetype libxml2 zlib  (這些可以用RPM包安裝,相應(yīng)的開發(fā)包也裝上*-devel)
nginx0.6.31   [url=http://sysoev.ru/nginx/nginx-0.6.31.tar.gz]http://sysoev.ru/nginx/nginx-0.6.31.tar.gz[/url]
pcre7.7       [url=ftp://ftp.csx.cam.ac.uk/pub/soft]ftp://ftp.csx.cam.ac.uk/pub/soft ... cre/pcre-7.7.tar.gz[/url]
php5.2.6      [url=http://www.php.net/get/php-5.2.6.tar.gz/from/this/mirror]http://www.php.net/get/php-5.2.6.tar.gz/from/this/mirror[/url]
mysql 5.0     我這里用的壓縮版,直接解壓設(shè)置權(quán)限使用的
xcache1.2.2   [url=http://xcache./]http://xcache.lighttpd.net/pub/Releases/1.2.2/xcache-1.2.2.tar.gz[/url]
php-fpm       [url=http://php-fpm.anight.org/downlo]http://php-fpm.anight.org/downlo ... 6-fpm-0.5.8.diff.gz[/url] (注意5.0的PHP沒有相應(yīng)的補(bǔ)丁包,php-fpm是為PHP打的一個(gè)FastCGI管理補(bǔ)丁,可以平滑變更php.ini配置而無需重啟php-cgi)
同時(shí)也可以安裝zend
openx2.4      [url=http://download.openx.org/openx-2.4.6.tar.gz]http://download.openx.org/openx-2.4.6.tar.gz[/url]

nginx+php5+fastcgi+xcache+mysql 這套系統(tǒng)還可以安裝discuz+zend

安裝過程:
一、mysql  
     shell> /usr/sbin/groupadd mysql
     shell> /usr/sbin/useradd -g mysql mysql
     shell> groupadd mysql
     shell> useradd -g mysql mysql
     shell> cd /usr/local
     shell> gunzip < /PATH/TO/MYSQL-VERSION-OS.tar.gz | tar xvf -
     shell> ln -s FULL-PATH-TO-MYSQL-VERSION-OS mysql
     shell> cd mysql
     shell> scripts/mysql_install_db --user=mysql
     shell> chown -R root  .
     shell> chown -R mysql data
     shell> chgrp -R mysql .
     shell> bin/mysqld_safe --user=mysql &



我這里也是省事,沒有選擇編譯安裝,其實(shí)最主要是注意權(quán)限問題。mysql啟動問題就不大。

二、PHP (本人在RH8上也安裝成功,就是相關(guān)的依賴比較多)
  shell>tar zxvf php-5.2.6.tar.gz
     shell>gzip -cd php-5.2.6-fpm-0.5.8.diff.gz | patch -d php-5.2.6 -p1
     shell>cd php-5.2.6/
     shell>./configure --prefix=/usr/local/php5 --with-mysql=/usr/local/mysql --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir --enable-xml --disable-debug  --enable-fastcgi --enable-fpm --enable-force-cgi-redirect --enable-mbstring  --with-gd --with-openssl
     shell>make && make install
     shell>cp php.ini-dist /usr/local/php/etc/php.ini



注:沒有php5.0 的php-fpm補(bǔ)丁包

參數(shù)可由自己定,php5卻需要安裝gd,libxml2,fastcgi,fpm,mbstring 對于memcache,xcache 可自行選擇
gd又依賴:jpeg,png,zlib,freetype,gd2

在編譯過程中有可能會遇到一些錯(cuò)誤。
一般解決辦法為:升級rpm為最新的,并安裝相關(guān)的依賴包
下載源碼包安裝到其它目前,編譯時(shí)指定相關(guān)的目錄。

具體的情況可以多看./configure --help


三、xcache 給PHP加速(建議安裝)
shell>tar zxvf xcache-1.2.2.tar.gz
    shell>cd xcache-1.2.2/
    shell>/usr/local/php5/bin/phpize
    shell>./configure --with-php-config=/usr/local/php5/bin/php-config --enable-xcache
    shell>make &&make install





四、修改php.ini (可下載附件進(jìn)行查看)
sed -i 's#extension_dir = "./"#extension_dir = "/usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-
20060613/" /usr/local/webserver/php/etc/php.ini
sed -i 's#display_errors = On#display_errors = Off#' /usr/local/webserver/php/etc/php.ini



在未尾加入
  
[xcache-common]
zend_extension = /usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-20060613/xcache.so

[xcache.admin]
xcache.admin.user = "xcache"
; xcache.admin.pass = md5($yourpasswd)
xcache.admin.pass = "8e6867a5d05144cf4761d6481fc674a8"

[xcache]
xcache.cacher = On
xcache.shm_scheme = "mmap"
xcache.size = 32M
; cpu number (cat /proc/cpuinfo |grep -c processor)
xcache.count = 2
xcache.slots = 8k
xcache.ttl = 0
xcache.gc_interval = 0
xcache.var_size = 2M
; cpu number (cat /proc/cpuinfo |grep -c processor)
xcache.var_count = 2
xcache.var_slots = 8K

xcache.var_ttl = 0
xcache.var_maxttl = 0
xcache.var_gc_interval = 300
xcache.readonly_protection = Off
xcache.mmap_path = "/dev/zero"  



五、修改php-fpm.conf (可下載附件進(jìn)行查看)
vi /usr/local/php5/etc/php-fpm.conf
用戶組及PHP目錄及,其它的一些信息可以根據(jù)自己的環(huán)境和需求來定
# <?xml version="1.0" ?>   
# <configuration>   
#   
#         All relative paths in this config are relative to php's install prefix   
#   
#         <section name="global_options">   
#   
#                 Pid file   
#                 <value name="pid_file">/usr/local/webserver/php/logs/php-fpm.pid</value>   
#   
#                 Error log file   
#                 <value name="error_log">/usr/local/webserver/php/logs/php-fpm.log</value>   
#   
#                 Log level   
#                 <value name="log_level">notice</value>   
#   
#                 When this amount of php processes exited with SIGSEGV or SIGBUS ...   
#                 <value name="emergency_restart_threshold">10</value>   
#   
#                 ... in a less than this interval of time, a graceful restart will be initiated.   
#                 Useful to work around accidental curruptions in accelerator's shared memory.   
#                 <value name="emergency_restart_interval">1m</value>   
#   
#                 Time limit on waiting child's reaction on signals from master   
#                 <value name="process_control_timeout">5s</value>   
#   
#                 Set to 'no' to debug fpm   
#                 <value name="daemonize">yes</value>   
#   
#         </section>   
#   
#         <workers>   
#   
#                 <section name="pool">   
#   
#                         Name of pool. Used in logs and stats.   
#                         <value name="name">default</value>   
#   
#                         Address to accept fastcgi requests on.   
#                         Valid syntax is 'ip.ad.re.ss:port' or just 'port' or '/path/to/unix/socket'   
#                         <value name="listen_address">127.0.0.1:9000</value>   
#   
#                         <value name="listen_options">   
#   
#                                 Set listen(2) backlog   
#                                 <value name="backlog">-1</value>   
#   
#                                 Set permissions for unix socket, if one used.   
#                                 In Linux read/write permissions must be set in order to allow connections from web server.   
#                                 Many BSD-derrived systems allow connections regardless of permissions.   
#                                 <value name="owner"></value>   
#                                 <value name="group"></value>   
#                                 <value name="mode">0666</value>   
#                         </value>   
#   
#                         Additional php.ini defines, specific to this pool of workers.   
#                         <value name="php_defines">   
#                                 <value name="sendmail_path">/usr/sbin/sendmail -t -i</value>   
#                                 <value name="display_errors">0</value>   
#                         </value>   
#   
#                         Unix user of processes   
#                         <value name="user">www</value>   
#   
#                         Unix group of processes   
#                         <value name="group">www</value>   
#   
#                         Process manager settings   
#                         <value name="pm">   
#   
#                                 Sets style of controling worker process count.   
#                                 Valid values are 'static' and 'apache-like'   
#                                 <value name="style">static</value>   
#   
#                                 Sets the limit on the number of simultaneous requests that will be served.   
#                                 Equivalent to Apache MaxClients directive.   
#                                 Equivalent to PHP_FCGI_CHILDREN environment in original php.fcgi   
#                                 Used with any pm_style.   
#                                 <value name="max_children">128</value>   
#   
#                                 Settings group for 'apache-like' pm style   
#                                 <value name="apache_like">   
#   
#                                         Sets the number of server processes created on startup.   
#                                         Used only when 'apache-like' pm_style is selected   
#                                         <value name="StartServers">20</value>   
#   
#                                         Sets the desired minimum number of idle server processes.   
#                                         Used only when 'apache-like' pm_style is selected   
#                                         <value name="MinSpareServers">5</value>   
#   
#                                         Sets the desired maximum number of idle server processes.   
#                                         Used only when 'apache-like' pm_style is selected   
#                                         <value name="MaxSpareServers">250</value>   
#   
#                                 </value>   
#   
#                         </value>   
#   
#                         Time limit on waiting execution of single request   
#                         Should be used when 'max_execution_time' ini option does not terminate execution for some reason   
#                         <value name="request_execution_timeout">31s</value>   
#   
#                         Set open file desc rlimit   
#                         <value name="rlimit_files">51200</value>   
#   
#                         Set max core size rlimit   
#                         <value name="rlimit_core">0</value>   
#   
#                         Chroot to this directory at the start   
#                         <value name="chroot"></value>   
#   
#                         Chdir to this directory at the start   
#                         <value name="chdir"></value>   
#   
#                         Redirect workers' stdout and stderr into main error log.   
#                         If not set, they will be redirected to /dev/null, according to FastCGI specs   
#                         <value name="catch_workers_output">yes</value>   
#   
#                         How much requests each process should execute before respawn.   
#                         Useful to work around memory leaks in 3rd party libraries.   
#                         For endless request processing please specify 0   
#                         Equivalent to PHP_FCGI_MAX_REQUESTS   
#                         <value name="max_requests">51200</value>   
#   
#                         Comma separated list of ipv4 addresses of FastCGI clients that allowed to connect.   
#                         Equivalent to FCGI_WEB_SERVER_ADDRS environment in original php.fcgi (5.2.2+)   
#                         Makes sense only with AF_INET listening socket.   
#                         <value name="allowed_clients">127.0.0.1</value>   
#   
#                         Pass environment variables like LD_LIBRARY_PATH   
#                         All $VARIABLEs are taken from current environment   
#                         <value name="environment">   
#                                 <value name="HOSTNAME">$HOSTNAME</value>   
#                                 <value name="PATH">/usr/local/bin:/usr/bin:/bin</value>   
#                                 <value name="TMP">/tmp</value>   
#                                 <value name="TMPDIR">/tmp</value>   
#                                 <value name="TEMP">/tmp</value>   
#                                 <value name="OSTYPE">$OSTYPE</value>   
#                                 <value name="MACHTYPE">$MACHTYPE</value>   
#                                 <value name="MALLOC_CHECK_">2</value>   
#                         </value>   
#   
#                 </section>   
#   
#         </workers>   
#   
# </configuration>




啟動php-cgi
/usr/local/php5/sbin/php-fpm start(stop)

六、建立nginx運(yùn)行的用戶及組
/usr/sbin/groupadd www -g 48
/usr/sbin/useradd -u 48 -g www www
php-fpm也用此用戶及組啟動


七、安裝nginx
tar zxvf pcre-7.7.tar.gz
cd pcre-7.7/
./configure
make && make install
cd ../

tar zxvf nginx-0.6.31.tar.gz
cd nginx-0.6.31/
./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
make && make install

編譯安裝速度超快。不需要像apache那樣漫長的等待,我這里并沒有發(fā)生錯(cuò)誤。呵


八、配置啟動nginx 配置fcgi
見附件
/usr/local/nginx/sbin/nginx
相關(guān)命令:
/usr/local/nginx/sbin/nginx -t 測試配置文件
/usr/local/nginx/sbin/nginx -v 查看相關(guān)版本
/usr/local/nginx/sbin/nginx –c </path/to/config>為nginx指定配置文件
退出nginx
kill –QUIT nginx_pid
重啟nginx
kill -HUP nginx-pid
笨方法就是:ps -ef |grep nginx 再kill pid  

九、nginx啟動腳本(linuxtone.org)
vi /etc/init.d/nginx  
chkconfig --level 35 nginx on

#! /bin/sh
### BEGIN INIT INFO
# Provides:          Nginx-php-fpm(fastcgi)
# Required-Start:    $all
# Required-Stop:     $all
# Default-Start:     3 5
# Default-Stop:      0 1 6
# Short-Description: Start and stop nginx-fcgi in external FASTCGI mode
# Description:       Start and stop nginx-fcgi in external FASTCGI mode
# http://www.linxutone.org msn:cnseek@msn.com
### END INIT INFO

set -e

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DESC="nginx daemon"
NAME=nginx
DAEMON=/usr/local/nginx/sbin/$NAME
CONFIGFILE=/usr/local/nginx/conf/nginx.conf
PIDFILE=/var/run/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME

# Gracefully exit if the package has been removed.
test -x $DAEMON || exit 0

d_start() {
  /usr/local/php-fcgi/sbin/php-fpm start > /dev/null 2>&1
  $DAEMON -c $CONFIGFILE || echo -n " already running"
}

d_stop() {
  /usr/local/php-fcgi/sbin/php-fpm stop > /dev/null 2>&1
  kill -QUIT `cat $PIDFILE` || echo -n " not running"
}

d_reload() {
  /usr/local/php-fcgi/sbin/php-fpm reload > /dev/null 2>&1
  kill -HUP `cat $PIDFILE` || echo -n " can't reload"
}

case "$1" in
  start)
        echo -n "Starting $DESC: $NAME"
        d_start
        echo "."
        ;;
  stop)
        echo -n "Stopping $DESC: $NAME"
        d_stop
        echo "."
        ;;
  reload)
        echo -n "Reloading $DESC configuration ..."
        d_reload
        echo "reloaded."
  ;;
  restart)
        echo -n "Restarting $DESC: $NAME"
        d_stop
        sleep 1
        d_start
        echo "."
        ;;
  *)
          echo "Usage: $SCRIPTNAME {start|stop|restart|reload}" >&2
          exit 3
        ;;
esac

exit 0




十、nginx日志處理腳本:
注意:不能直接刪除/.../access.log。加入crontab
#!/bin/sh

# This file run at 00:00

date=$(date -d "yesterday" +"%Y-%m-%d")

gzip -c /..../logs/access.log > /.../logs/${date}.log.gz

:>/..../logs/access.log  




另一個(gè)腳本:
#!/bin/bash

# linuxtone.org

log_dir="/data/logs"

time=`date +%Y%m%d`   

/bin/mkdir -p  ${log_dir}/${date_dir} > /dev/null 2>&1

/bin/mv  ${log_dir}/access_count.linxutone.org.log ${log_dir}/access_count.linuxtone.org.$time.log

kill -USR1 `cat  /var/run/nginx.pid`


[ 本帖最后由 守住每一天 于 2008-6-18 23:17 編輯 ]

論壇徽章:
0
2 [報(bào)告]
發(fā)表于 2008-06-18 23:03 |只看該作者

回復(fù) #1 守住每一天 的帖子

十一、安裝openx2.4
解壓后放到/usr/local/nginx/html目錄。
設(shè)置權(quán)限 chown www:www -R openx
         chmod 777 -R openx/var

在瀏覽器里輸入http://192.168.19.60/openx
就可以安裝了,圖形的很好安裝

相關(guān)的升級文檔說明,翻譯,及錯(cuò)誤都在附件里。
大家可以下載~~

openx 的升級翻譯Warning: Server timezone not correctly set in PHP.
Please see the documentation about setting this variable for PHP.

If you are using PHP 5.1 or 5.2 set the correct timezone in your php.ini file:
date.timezone = Europe/London
If you are using PHP 4.3, 4.4 or 5.0 export the TZ environment variable in your web server configuration. If you are using an Apache web server, do this using the SetEnv directive in httpd.conf:
SetEnv TZ Europe/London
If you do not have access to set the timezone on your server ask your system administrator or your hosting provider to set this up for you.
Alternatively, you can call "date_timezone_default_set()" on PHP 5.1 and PHP 5.2 or you can set "date.timezone" in a .htaccess file.


############################################################################################
Prepare the database 準(zhǔn)備數(shù)據(jù)庫
The upgrade process guides you through synchronising your old and new databases. But there can be additional preparations:
升級過程將指導(dǎo)你完成同步新舊數(shù)據(jù)庫.

before you perform the upgrade.
前綴字母小寫:如果你現(xiàn)有的數(shù)據(jù)庫前綴中包含大寫字母, 你必須在升級動作之前把所有前綴改成小寫字母
Large database: During the upgrade, OpenX copies each affected table, which can be very time-consuming for large databases. To avoid this process, create a file named "NOBACKUPS" in the var/ directory for your new version of OpenX. When the Install Wizard detects this file, it does not copy tables.
擴(kuò)大數(shù)據(jù)庫:升級過程中, OpenX會復(fù)制每一個(gè)涉及到的表格, 因此對于較大數(shù)據(jù)庫來說這個(gè)過程耗時(shí)較長. 為了避免這種情況, 為你的新OpenX系統(tǒng)創(chuàng)建一個(gè)名為"NOBACKUPS"的文件.一旦安裝程序找到這個(gè)文件, 將不再進(jìn)步復(fù)制.


Database Setup
Upgrade only

The Database Setup page displays database settings detected from your existing installation. Check the settings to ensure they are correct. If the settings are not correct, amend them in your configuration file and go back to the start of the install and upgrade wizard. When you are satisfied the settings are in order, click Continue to start the process of altering your database. This process can take some time. When the process is finished, the screen updates to report that your database has been upgraded successfully.

Click Continue to open the Configuration Setup page.

升級專用  數(shù)據(jù)庫安裝頁面顯示檢測到的你已安裝的的文件.檢查設(shè)置是否正確.如果不對,在配置文件中修復(fù)然后重新啟動升級向?qū)? 如果你認(rèn)為設(shè)置正確可以占擊繼續(xù)開始更新數(shù)據(jù)庫. 此過程需要一定時(shí)間. 安裝過程結(jié)束后, 屏幕會顯示你的數(shù)據(jù)庫升級成功. 點(diǎn)擊繼續(xù)打開配置文件頁面

論壇徽章:
0
3 [報(bào)告]
發(fā)表于 2008-07-24 21:21 |只看該作者
增加一下discuz+zend   還有些意思

論壇徽章:
0
4 [報(bào)告]
發(fā)表于 2008-09-02 11:47 |只看該作者
發(fā)現(xiàn)這個(gè)東西很吃PHP-CGI!不知道是在頁面調(diào)用廣告的問題還是其他的問題!
netstat -anpo|grep "php-cgi"|wc -l
251
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報(bào)專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP