配置一台suse服务器

作者:dawncold 发布时间:June 16, 2011 分类:技术

不知道最终能否配置好,先记录下来吧! 安装了openssl库,但安装nginx的时候还是使用了--without-http-cache,要不总是提示找不到openssl。默认把nginx安装到了/usr/local/nginx这个地方。 下面是php,我总是配置不好……  

 


tar xvf php-5.2.17.tar.bz2 
gzip  -cd php-5.2.17-fpm-0.5.14.diff.gz | patch -d php-5.2.17 -p1
cd php-5.2.17
./configure --prefix=/usr/local/php \
--with-config-file-path=/usr/local/php/etc \
--with-mysql=/usr/local/mysql/ \
--with-mysqli=/usr/local/mysql/bin/mysql_config \
--with-iconv-dir=/usr/local/ \
--with-jpeg-dir \
--with-png-dir \
--with-zlib \
--with-libxml-dir=/usr/  \
--enable-xml \
--disable-rpath \
--enable-discard-path  \
--enable-bcmath  \
--enable-shmop \
--enable-sysvsem \
--enable-inline-optimization \
--with-curl \
--with-curlwrappers  \
--enable-mbregex \
--enable-fastcgi \
--enable-fpm \
--enable-force-cgi-redirect \
--enable-mbstring  \
--with-mcrypt \
--enable-gd-native-ttf \
--with-openssl \
--with-mhash \
--enable-pcntl  \
--enable-sockets  \
--with-xmlrpc \
--enable-zip \
--enable-soap \
--enable-safe-mode \
--with-gd=/usr/local/gd/

./configure && make && make install

 jpeg8c lib!!! libpng lib!!! GD_2.XX(直接写--with-gd容易找不到,就制定好位置(此位置要在安装gd的时候用prefix制定))  

 

 

 


ln -s /usr/local/lib/libmcrypt.la /usr/lib/libmcrypt.la
ln -s /usr/local/lib/libmcrypt.so /usr/lib/libmcrypt.so
ln -s /usr/local/lib/libmcrypt.so.4 /usr/lib/libmcrypt.so.4 
ln -s /usr/local/lib/libmcrypt.so.4.4.8 /usr/lib/libmcrypt.so.4.4.8 
ln -s  /usr/local/lib/libmhash.a /usr/lib/libmhash.a  
ln -s  /usr/local/lib/libmhash.la /usr/lib/libmhash.la  
ln -s  /usr/local/lib/libmhash.so /usr/lib/libmhash.so 
ln -s  /usr/local/lib/libmhash.so.2 /usr/lib/libmhash.so.2
ln -s  /usr/local/lib/libmhash.so.2.0.1 /usr/lib/libmhash.so.2.0.1

 

删剪了不少内容,终于编译成功了……php啊……(make ZEND_EXTRA_LIBS='-liconv') 缺少相关库的情况请使用/sbin/ldconfig -v 更新一下,先把/usr/local/lib加入/etc/ld.so.conf中再更新! make install cp php.ini-dist  /usr/local/php/etc/php.ini   


7、创建php-fpm配置文件,php-fpm是开源社区为php开发的一个补丁,可以平滑变更php.ini,而无需重启php-cgi
  php-fpm.conf文件的详细解释http://php-fpm.org/wiki/Configuration_File
  vim /usr/local/php/etc/php-fpm.conf ,使用 :set nu显示行号。
  需要注意的几行,给大家说说
  
  (原)41                         <value name="listen_address">127.0.0.1:9000</value>
  (改)41                         <value name="listen_address">/tmp/php-cgi.sock</value> #个人习惯,比较喜欢使用sock。
  (原)63                 <!--    <value name="user">nobody</value>     -->#进程的所有者
  (原)66                 <!--    <value name="group">nobody</value>     -->#进程的所有组,默认都为nobody
  (改)       <value name="user">nobody</value>
  (改)       <value name="group">nobody</value>  
  59                 <!--    <value name="display_errors">0</value>   --> #是否显示错误,1为关闭显示错误,0为打开错误显示,调试期间可以打开
  79                             <value name="max_children">5</value> #为客户端服务的最大进程数
  86                             <value name="StartServers">20</value> #启动时创建的进程数
         <value name="MinSpareServers">5</value> #最小空闲进程数
  94                             <value name="MaxSpareServers">35</value>#最大空闲进程数
  
  (原)107                        <value name="request_slowlog_timeout">0s</value> #默认关闭慢查询,建议还是打开,对性能分析有好处
  (改)107                        <value name="request_slowlog_timeout">5s</value>
  
  (原)113                        <value name="rlimit_files">1024</value> #设定打开文件的限制
  (改)113                        <value name="rlimit_files">51200</value>
  
  132                         <value name="max_requests">5000</value> #设置大可以接受的请求数
  
  137                        <value name="allowed_clients">127.0.0.1</value> #允许连接的客户端

 
  启动php-cgi
  Usage: /usr/local/php/sbin/php-fpm {start|stop|quit|restart|reload|logrotate}

/usr/local/php/sbin/php-fpm start


  
 8、安装nginx-1.0
  安装pcre-7.9.tar.gz,perl扩展正则表达式的支持,主要用于支持url rewrite
  
tar -zxvf pcre-7.9.tar.gz
cd pcre-7.9
./configure
make && make install
cd ..


  
  安装ngnx-1.0

tar -zxvf nginx-1.0.0.tar.gz
cd nginx-1.0.0
./configure --prefix=/usr/local/nginx \
--user=nobody \
--group=nobody \
--with-http_stub_status_module \
--with-http_ssl_module


  #config完成后,查看结果,使用了哪些库,如果有些你希望使用的库没有使用,需要安装或者添加配置参数
   Configuration summary
   + using system PCRE library
   + using system OpenSSL library
   + md5: using OpenSSL library
   + sha1 library is not used
   + using system zlib library
   
  make && make install
  
  修改配置文件
  
vim /usr/local/nginx/conf/nginx.conf
user  nobody; #取消注释
events {
    use epoll;
    worker_connections  51200;
}
server {
    listen       80;
    server_name  122.225.32.135;
    location ~ \.php$ {
        if ( $fastcgi_script_name ~ \..*\/.*php ) {
            return 403;
        }
        root           html;
        fastcgi_pass   unix:/tmp/php-cgi.sock;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
        include        fastcgi.conf;
}


  
/usr/local/nginx/sbin/nginx  -t -c /usr/local/nginx/conf/nginx.conf  #测试配置文件是否正确
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf 或者/usr/local/nginx/sbin/nginx  


  

  ##############PHP结束################# mysql的配置,根本没配置


./configure --prefix=/usr/local/mysql \
--sysconfdir=/etc \
--localstatedir=/var/lib/mysql  

make 

make install