• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    FreeBSD7.0编译安装nginx+php+mysql

    环境
    系统:FreeBSD7.0
    软件:mysql-5.0.51a,nginx-0.6.30,lighttpd-1.4.19,php-5.2.6
    所有软件都安装到/usr/local/vhost,如果需要请自行修改
    一、下载源代码

    cd /usr/ports/databases/mysql50-server/
    
    make fetch

    cd /usr/ports/www/nginx-devel/
    make fetch

    cd /usr/ports/lang/php5
    make fetch

    cd /usr/ports/www/lighttpd
    make fetch

    二、编译安装
    MySQL

    cd /usr/ports/distfiles/
    
    tar -jxf mysql-5.0.51a.tar.gz 
    cd mysql-5.0.51a
     ./configure --prefix=/usr/local/vhost/mysql --with-charset=utf8 --with-extra-charsets=all --with-big-tables --with-pthread
    make &&make install

    Nginx

    cd /usr/ports/devel/pcre
    
    make install clean

    cd /usr/ports/distfiles/
    tar -jxf nginx-0.6.30.tar.gz 
    cd nginx-0.6.30
    ./configure --prefix=/usr/local/vhost/nginx --with-http_ssl_module --with-http_gzip_static_module --with-http_stub_status_module --with-http_sub_module
    make &&make install

    Lighttpd
    (安装lighttpd是为了得到启动fastcgi进程)

    cd /usr/ports/distfiles/
    
    tar -jxf lighttpd-1.4.19.tar.bz2 
    cd lighttpd-1.4.19
    ./configure --prefix=/usr/local/vhost/lighttpd

    Php

    cd /usr/ports/textproc/libxml2
    
    make install clean

    cd /usr/ports/ftp/curl
    make install clean

    cd /usr/ports/graphics/jpeg
    make install clean

    cd /usr/ports/graphics/png
    make install clean

    cd /usr/ports/devel/gettext
    make install clean

    cd /usr/ports/distfiles/
    tar -jxf php-5.2.6.tar.bz2 
    cd php-5.2.6
    ./configure --prefix=/usr/local/vhost/php --with-mysql=/usr/local/vhost/mysql -enable-fastcgi --enable-sockets --enable-ftp --enable-zip --enable-mbstring --enable-mbregex --enable-calendar --with-curl=/usr/local/clude --with-curlwrappers --disable-debug --enable-inline-optimization --with-zlib --with-gd --with-kerberos --with-gettext --enable-force-cgi-redirect --with-jpeg-dir=/usr/inlocal/clude --with-png-dir=/usr/local/include --with-bz2 --enable-pcntl --with-iconv 
    make && make install
    cp php.ini-dist /usr/local/vhost/php/lib/php.ini

    三、配置

    MySQL

    cd /usr/local/vhost/mysql
    
    pw adduser mysql -d /dev/null -s /sbin/nologin
    bin/mysql_install_db
    cp share/mysql/mysql.server ./
    chmod +x mysql.server
    chown -R mysql ./

    启动
    引用:/usr/local/vhost/mysql/mysql.server start


     配置nginx

    cd /usr/local/vhost/nginx/
    
    pw adduser webuser -d /dev/null -s /sbin/nologin
    cp /usr/local/vhost/lighttpd/bin/spawn-fcgi ./sbin/
    rm -rf /usr/local/vhost/lighttpd

    vi sbin/php.sh

    #!/bin/sh
    
    /usr/local/vhost/nginx/sbin/spawn-fcgi -a 127.0.0.1 -p 9000 -C 8 -u webuser -f /usr/local/vhost/php/bin/php-cgi

    引用:chmod +x sbin/php.sh


    启动php for fast-cgi
    引用:sbin/php.sh


    vi conf/enable_php

    location ~ \.php$ {
    
    root           html;
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_index  index.php;
    fastcgi_param  SCRIPT_FILENAME  /usr/local/vhost/nginx/html$fastcgi_script_name;
    fastcgi_param  QUERY_STRING       $query_string;
    fastcgi_param  REQUEST_METHOD     $request_method;
    fastcgi_param  CONTENT_TYPE       $content_type;
    fastcgi_param  CONTENT_LENGTH     $content_length;

    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  GATEWAY_INTERFACE  CGI/1.1;
    fastcgi_param  SERVER_SOFTWARE    nginx/$nginx_version;

    fastcgi_param  REMOTE_ADDR        $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-redirect
    fastcgi_param  REDIRECT_STATUS    200;
    }

    vi conf/nginx.conf

    user  webuser webuser;
    
    worker_processes  1;

    events {
        worker_connections  4096;
        use kqueue;
    }


    http {
        include       mime.types;
        default_type  application/octet-stream;

        #log_format  main  '$remote_addr - $remote_user [$time_local] $request '
        #                  '"$status" $body_bytes_sent "$http_referer" '
        #                  '"$http_user_agent" "$http_x_forwarded_for"';

        #access_log  logs/access.log  main;

        client_header_timeout  3m;
        client_body_timeout    3m;
        send_timeout           3m;
        client_max_body_size  5m;

        client_header_buffer_size    1k;
        large_client_header_buffers  4 4k;

        gzip on;
        gzip_min_length  1100;
        gzip_buffers     4 8k;
        gzip_types       text/plain;

        output_buffers   1 32k;
        postpone_output  1460;

        sendfile         on;
        tcp_nopush       on;
        tcp_nodelay      on;
        send_lowat       12000;

        keepalive_timeout  75 20;


        server {
            listen       80;
            server_name  localhost;

            location / {
                root   html;
                index  index.php index.html index.htm;
            }

    if (-d $request_filename){
                rewrite ^/(.*)([^/])$ http://$host/$1$2/ permanent;
            }
    location /nginx_status {
      stub_status on;
         access_log   off;
    }

    include enable_php;
    error_page   500 502 503 504  /50x.html;
            location = /50x.html {
                root   html;
            }

        }
    }

    测试配置文件
    引用:sbin/nginx -t
    2008/05/08 11:50:19 [info] 3336#0: the configuration file /usr/local/vhost/nginx/conf/nginx.conf syntax is ok
    2008/05/08 11:50:19 [info] 3336#0: the configuration file /usr/local/vhost/nginx/conf/nginx.conf was tested successfully



    vi html/phpinfo.php

    ?php
    
    phpinfo();
    ?>

    启动测试
    引用:/usr/local/vhost/nginx/sbin/nginx


    在浏览器里输入
    引用:http://192.168.29.128/phpinfo.php


    安装配置phpMyadmin

    cd /usr/ports/databases/phpmyadmin/
    
    make fetch

    cd /usr/ports/distfiles
    tar -jxf phpMyAdmin-2.11.6-all-languages.tar.bz2 
    mv phpMyAdmin-2.11.6-all-languages /usr/local/vhost/nginx/html/dbadmin

    此时MySQL的root没有密码,如果一切正常可以用
    http://192.168.29.128/dbadmin/index.php来管理MySQL了
     

    上一篇:配置lagg, 实现cisco 2950 与Freebsd 7.0链路聚合笔记
    下一篇:最新FreeBSD7.0下载
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    FreeBSD7.0编译安装nginx+php+mysql FreeBSD7.0,编译,安装,nginx+php+mysql,