freebsd9.1源码安装apache、mysql、php环境(亲侧通过)


    新手不建议用源码安装,请慎重
    1.安装9.1系统
    2.通过Sysinstall安装预装软件
    =========================================================
    3.安装Linux_libio兼容包
    rc.conf 增加一句linux_enable=true 应该是 linux_enable="YES"
    ========================================================
    4.通过ports安装SSH守护进程(ports/security/sshgard)
    5.通过Ports安装加密相关的软件(ports/security/mcrypt)
    6.安装MYSQL
    7.安装apr(/configure   ,make install clean)
    8.安装apr-util1.5.1(/configure --with-apr=/usr/local/apr)
    9.安装Apache
    10. 安装PHP
    11.安装FastCGI
    12.安装Xcache
    13.安装Memcache
    15.安装Proftpd
     
    Freebsd支持中文.txt
    设置全局的 locale 参考下面方法:
    vi /etc/login.conf
    最后增加这个:
    chinese:Chinese Users Accounts:\
    :charset=UTF-8:\
    :lang=zh_CN.UTF-8:\
    :tc=default:
    然后修改你的passwd文件,使用vipw命令
    user:password:1111:11:language:0:0:User Name:/home/user:/bin/sh
    language位置写入chinese,关联上你的locale。
    export LC_CTYPE="zh_CN.UTF-8"
    export LC_ALL="zh_CN.UTF-8"
    export LANG="zh_CN.UTF-8"
    需要更新一下数据库,使用 cap_mkdb /etc/login.conf
    登出再登录,使用命令 locale 就可以看到你的 locale 已经修改完成了
    php需要环境.txt
    1.curl,gd,mbstring,jpeg,png,php_memcache,xcache,mysql,apache
    安装时都需要指定安装目录
    Robin_预装包.txt
    通过Sysinstall安装(光盘)
    1.archives:libzip;zip;unzip
    2.databases: sqlite
    3.converters: libiconv(php用于编码转换)
    4.devel: pre-8.20l(Apache);perl-5.12.4.3
    5.emulators: linux_base兼容包
    6.FTP: curl-1.21.3.2
    7.graphics: giflib-4.1.6 ; jpeg-8.3 ; libexif-0.6.20 ; png-1.4.8
    8.lang: perl-5.12.4.3 ; python ; ruby
    9.all:  libxml2-7.8-1 , freetype
    ports/emulators/linux_libauo
    ports/security/sshguard
    ports/security/mcrypt
     kldstat 命令内核挂载情况,是否关在linux.ko
    开始安装
    1、安装mysql 
    创建用户组mysql
    shell>pw groupadd mysql
    添加用户至用户组
    shell> pw useradd -r -g mysql mysql
    解压:因为mysql是已经编译好的版本,因此无需安装
    cd /soft 
    tar –vzxf mysql-5.6.11.tar.gz  解压
    mv mysql-5.6.11-free* /usr/local/servers/mysql
    cd  /usr/local/shadow/mysql
    chown –R mysql .  更改当前文件夹下所有文件的用户(注意后面有.)
    chgrp –R mysql .  更改当前文件夹下所有文件的组
    ./scripts/mysql_install_db –user=mysql  安装mysql服务,会生成一个my.cnf的配置文件
    chown –R root .   修改mysql文件夹内所有文件用户为root
    chown –R mysql data修改mysql文件夹内data文件夹用户为mysql
    ./bin/mysqld_safe –user=mysql &  启动mysql服务
    ./bin/mysql –u root –p 密码为空
    use mysql
    Delete from user where host<>’127.0.0.1’;
    select host,user,password from user;
    update user set host=’%’,password=password(‘shadow’); //修改登录ip为任意;密码为shadow
    flush privileges;   //刷新mysql帐号权限
    然后远程连一下数据库试试吧。。
      初始化root密码
    bin/mysqladmin -u root password 'newpassword'
    bin/mysqladmin –u root password  123456
    ./mysqladmin   -u   root   -p   password   '456'  
     然后系统会询问你现在的密码,你输入现在的密码123回车就可以了  
     下次使用MYSQL的时候,ROOT   的口令就是456了
     测试帐号
    bin/mysql –u root –p
    然后输入密码,出现提示符:
    mysql>
    技巧提示:
    mysql #运行mysql 客户端,并开放root用户的远程访问权限。以便调试
    use mysql
    update user set host = '%' where user = 'root' and host <> 'localhost';
    flush privileges;
    quit
    2、apache安装
    Step 1
    编译Apache的要求
    1.  磁盘空间   2.ANSI- C编译器及编译环境 3.确保准确的时间 4.Perl5 [可选]
    5.  apr/apr-util >= 1.2
    需要先下载  apr-1.4.6.tar.gz 和 apr-util-1.5.1.tar.gz
    配置并安装  地址  http://apr.apache.org/download.cgi
    apr和apr-util包含在Apache httpd的发行源代码中,并且在绝大多数情况下使用都不会出现问题。
    当然,如果apr或apr-util的1.0或1.1版本已经安装在你的系统中了,则必须将你的apr/apr-util升级到1.2版本,
    或者将httpd单独分开编译。要使用发行源代码中自带的apr/apr-util源代码进行安装,你必须手动完成:
    @note: 编译和安装 apr 1.4.6
    tar -zxvf apr-1.4.6.tar.gz
    cd srclib/apr-1.4.6
    ./configure –-prefix=/usr/local/apr/
    make
    make install
    @note: 编译和安装 apr-util 1.5.1
    tar -zxvf apr-util1.5.1.tar.gz
    cd ../apr-util1.5.1
    ./configure –-prefix=/usr/local/apr-util/ –-with-apr=/usr/local/apr/
    make
    make install
    step2-1安装httpd
    tar zxvf httpd-2.2.15.tar.gz
    cd ../httpd-2.2.15
    安装示例: ./configure --prefix=/usr/local/servers/apache22 --enable-so      --enable-deflate=shared --enable-ssl=shared --enable-expires=shared        --enable-headers=shared --enable-rewrite=shared --enable-static-support      --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr-util/bin/apu-1-config --with-mpm=prefork --enable-cache=shared --enable-disk-cache=shared --enable-mem-cache=shared --enable-vhost-alias=shared --enable-suexec --with-pcre
    make
    make install
    apache 启动服务
        /usr/local/servers/apache22/bin/httpd -k start restart stop
        /usr/local/servers/apache22/bin/httpd -k graceful
        /usr/local/apache/bin/apachectl -k restart
    3、安装php
        版本要求,至少5.4以上
        安装apache需要vhost支持
        可以平滑重启
    1.安装mod_fastcgi
        下载mod_fastcgi-2.4.6
        解压缩
        修改Makefile.AP2改名为Makefile
    修改   top_dir=你的apache路径
        然后执行命令make install 安装  
    2.phpcgi 服务启动 即安装php 需要php5.4以上
        /usr/local/servers/php/sbin/php-fpm &
        安装示例: ./configure --prefix=/usr/local/php --with-apxs2=apache路径/bin/apxs2
    --enable-fpm --with-zlib=/zlib路径 --with-bz2=/bzip2路径 --with-curl=/curl路径 --with-gd=/gd路径
    --with-jpeg-dir=/jpeg路径 --with-png-dir=/png路径 --enable-mbstring --with-mcrypt=/mcrypt路径
    --with-mysql=/mysql路径 --with-mysqli=/mysql路径 --with-libxml-dir=/xml路径 --enable-mysqlnd
        我是这样进行安装配置的
        ./configure --prefix=/usr/local/servers/php --with-apxs2=/usr/local/servers/apache22/bin/apxs --enable-fpm --with-zlib --with-bz2 --with-curl --with-gd --enable-gd-jis-conv --with-freetype-dir --with-jpeg-dir --with-png-dir --enable-mbstring --enable-ftp --enable-exif --with-mcrypt --with-mysql --with-mysqli=mysqlnd --with-libxml-dir --enable-mysqlnd
    完成上面会显示感谢使用PHP等字样
    make
    编译成功后出现"Build complete."字样,那么就可以进行安装了:
    (make编译时fpm模块出错:解决办法php5.4.11/sapi/fpm/fpm/fpm_sockets.c文件修改三处代码     info.tcpi_sacked  改为: info.__tcpi_sacked
    info.tcpi_unacked 改为: info.__tcpi_unacked)
    make install
     完成即可  可以平滑重启
     3、拷贝php配置文件
    cp  php.ini-development(开发模式)  或者production生产模式     /usr/local/servers/php/etc/php.ini
    修改php.ini
        disable_functions =system,exec,shell_exec,passthru,ini_alter,dl,pfsockopen,openlog,syslog,readlink,symlink,link,
    leak,popen,escapeshellcmd,apache_child_terminate,apache_get_modules,apache_get_version,
    apache_getenv,apache_note,apache_setenv,virtual;,phpinfo
    4、修改配置
    修改/usr/local/servers/php/etc/php.ini文件(新版本可能不需要)
    register_globals = On
    修改/usr/local/apache/conf/ httpd.conf文件
    设置apache的默认文件名次序
    DirectoryIndex index.html index.htm index.php
    增加php后缀支持
    AddType application/x-httpd-php .php .php3 .phtml
    AddType application/x-httpd-php-source .phps
    5、重启apache服务
    /usr/local/apache/bin/apachectl -k restart
    6、测试php
    <?php
    echo phpinfo();
    ?>
    4、proftp 服务安装启动,安装ftp
        /usr/local/servers/proftp/sbin/proftpd &
        安装示例:./configure --prefix=/usr/local/servers/proftpd
        添加、修改、删除帐号
    首先添加管理组     
    ./ftpasswd --group --name=czh --gid=1001 --file=../etc/group   
    添加用户
    ./ftpasswd --passwd --name=sohuishangbao --uid=1004 --gid=80 --file=../etc/passwd
    --shell=/sbin/nologin --home=/wwwroot/lianmeng
    ./ftpasswd --passwd --name=hsbczh --uid=1003 --gid=1001 --file=../etc/passwd
    --shell=/sbin/nologin --home=/wwwroot/www.huishangbao.com/www
    输入后,会提示输入用户的密码,密码不能太长,不能有特殊字符。   
    注意,以上路径需根据各服务具体路径而定
    www1:*:1003:80:User &:/home/www1:/usr/sbin/nologin
    www2:*:1004:80:User &:/home/www2:/usr/sbin/nologin
    www3:*:1005:80:User &:/home/www3:/usr/sbin/nologin
    www4:*:1006:80:User &:/home/www4:/usr/sbin/nologin
    www5:*:1007:80:User &:/home/www5:/usr/sbin/nologin
    www6:*:1008:80:User &:/home/www6:/usr/sbin/nologin
    www7:*:1009:80:User &:/home/www7:/usr/sbin/nologin
    www8:*:1010:80:User &:/home/www8:/usr/sbin/nologin
    www9:*:1011:80:User &:/home/www9:/usr/sbin/nologin