`

在vm中 的FreeBSD下安装MySQL+Apache+PHP日记

阅读更多
        最近对freebsd比较感兴趣,研究了一下,折腾了几天,终于搞定了在vm中安装freebsd并搭建php环境了
        我安装的是vmware server1.0版,为什么装这个呢.主要是有些比较有意思的功能,比如客户端不用一直开着,关了也没关系,因为虚拟机中的os是做为服务来运行的.
        废话少说
        首先安装vmware server1.0,这个我就不多说了,很简单,当然,应早就下好了freebsd的iso文件了,我下的是freebsd6.2版
        一般的vm用法我也不多说了,要说明的一点是,我是adsl的上网环境,所以vm我选nat方式连接,vm中的os自动获得ip,不过也可以手动设置,如何设置呢,跟你的vm有关,这个后面再说,采用加载镜像文件的方式安装
      
       首先, freebsd安装
       freebsd安装采用最小化安装方式 + man + ports, 至于此方法的使用我在另一篇blog中已经写明了,网上也有很多关于freebsd最小化安装的教程,
       由于我采用的是最小化安装,所以很多东西都没有设置,当系统安装完后,第一件事就是设置, 在控制台输入
      
  1. #sysinstall  
   
       进入设置, 选 configure  
       选 root  password 设置密码,这是非常重要的,一定要做,当然你如果不是采用的最小化安装的话,在系统快安装完毕的时候要要求你输入密码
       选   User Mangement  创建用户.   id , password 自选, Group 一定要写  Group, 这样此用户才可以用 su 命令取得 root 权限
       选 Time Zone 设置时区   
       选 networking   接着选 Interfaces 设置网络接口, 接着选 网卡型号, 接选是否为自动dhcp服务,这里可以选yes,则为自动获得ip
,但也可以自己设定固定ip, 在 /etc/rc.conf 文件中定义.
       选 SSH, 这是为了可以远程登录用的,所以开启..
   
       基本设置好了,接着配置相关的一些东西.我并没有马上就去更新ports,我不是很喜欢用ports安装软件,所以我打算自己编译安装,实在麻烦的时候再ports

       首先配置 简单配置 SSH , 配置 /etc/ssh/sshd.config 文件
       暂时只设置此三项
      
  1. PermitRootLogin yes #允许root登录  
  2. PermitEmptyPasswords no #不允许空密码登录  
  3. PasswordAuthentication yes # 设置是否使用口令验证  
   
  1. # /etc/rc.d/sshd restart  
 启动ssh
 这样就可以用putty等ssh工具在主机中访问vm中的os了,非常方便, freebsd默认最小化安装就安装好了ssh

配置ftp

  1. #ee /etc/inetd.conf  

去掉第一个ftp前的#,保存

在/etc/rc.conf中加入

  1. # inetd_enable="YES"

重启服务,sh /etc/rc

这样就配置好了,可以使用ftp工具上传软件到vm中了

搭建php环境

我采用手动安装方式,为了方便管理,我在网上找到一个叫webmin的软件蛮好用的.可以方便管理服务器.
www.webmin.com,下载tar.gz包
此软件的使用方法我就不多说了,网上很多
比如http://www.youren.com/Article/computer/software/linux/200510/20993.html

安装mysql

我使用的的Mysql是5.0.33,源代码版,你也可以使用RPM包或者二进制版,安装方法可能不一样,请参考其它文章.
先下载Mysql5.0.33的源代码版,地址: http://dev.mysql.com/downloads/mysql/5.0.html
把它下到/usr/local/src目录下,如果没有该目录,就自己建一个.下载回来的包名字叫 mysql-5.0.33.tar.gz,然后我们把它解压出来:

  1. # tar -zxvf mysql-5.0.33.tar.gz   

解压后生成mysql-5.0.33目录,我们进入该目录:
  1. # cd mysql-5.0.33  

进入后就开始配置mysql了,配置过程中我们要给mysql设置一个安装目录,我们设置在 /usr/local/mysql 下,以为把文件放到一个地方比较容易

管理,如果你还想获得更多的配置信息,使用 ./configure --help: 

  1. # ./configure --prefix=/usr/local/mysql   


然后等几秒钟,配置完成后就编译源代码:

  1. # make   


这个编译的过程比较长,如果机器比较慢的话,可能要近二十分种 ( PS:我的机器是很普通的机器,所有用了差不多15,6分种 :( ) .
编译完成后就安装:

  1. # make install  

等上几秒钟,安装完成.下面就到了最关键的部分了,为什么老安装不成功,(PS:至少我是安装了N次,N >; 10 ,呵呵),问题关键就在这里,访问

mysql要一个专门的用户,而且必须给相应的访问权限,这里我们就设置root和mysql有权限访问.
我们先建立一个mysql和mysql用户来访问mysql:

  1. # pw groupadd mysql #建立mysql组   

  1. # pw useradd mysql -g mysql #建立mysql用户并且加入到mysql组中   


建立用户后我们就初始化表 (注意:必须先执行本步骤后才能进行以下步骤)

  1. # ./scripts/mysql_install_db --user=mysql #初试化表并且规定用mysql用户来访问   


初始化表以后就开始给mysql和root用户设定访问权限, 我们先到安装mysql的目录:

  1. # cd /usr/local/mysql   


然后设置权限

  1. # chown -R root . #设定root能访问/usr/local/mysql  
  2. # chown -R mysql var #设定mysql用户能访问/usr/local/mysql/var ,里面存的是mysql的数据库文件  
  3. # chown -R mysql var/. #设定mysql用户能访问/usr/local/mysql/var下的所有文件  
  4. # chown -R mysql var/mysql/. #设定mysql用户能访问/usr/local/mysql/var/mysql下的所有文件  
  5. # chgrp -R mysql . #设定mysql组能够访问/usr/local/mysql   


设置完成后,基本上就装好了,好了,我们运行一下我们的mysql:

  1. # /usr/local/mysql/bin/mysqld_safe --user=mysql &    


如果没有问题的话,应该会出现类似这样的提示:

  1. [142264  
  2. # Starting mysqld daemon with databases from /usr/local/mysql/var   


这就证明你安装成功了,如果出现:

  1. [142264  
  2. # Starting mysqld daemon with databases from /usr/local/mysql/var  
  3. 040818 10:53:45  mysqld ended   


则证明你的mysql运行不来,请查看错误日志: /usr/local/mysql/var/*.err 然后确定安装是否成功,如果没有成功,请检查上面的步骤是否正确

.
安装完成后,能够通过 /usr/local/mysql/bin/mysql 来连接mysql进行管理,如果你装了apache并且能够解析php的话,也能使用phpMyadmin来管

理你的mysql,记得装完后使用mysql或者mysqladmin来修改root的密码,这里我们就不说了,请参考相关的文章.

控制mysql就通过 /usr/local/mysql/libexec/mysqld 来控制启动或者停止mysql:

  1. # /usr/local/mysql/libexec/mysqld start #启动mysql  
  2. # /usr/local/mysql/libexec/mysqld stop #停止mysql  
  3. # /usr/local/mysql/libexec/mysqld restart #重启mysql   


为了每次系统重启后都能运行mysql,可以写一个脚本放到 /usr/local/etc/rc.d目录下,用来运行mysql,我们写一个脚本mysql_start.sh

  1. #! /bin/sh  
  2. /usr/local/mysql/bin/mysqld_safe&   


然后保存到/usr/local/etc/rc.d目录下,那么以后reboot系统后都能启动mysql了.

注:在freebsd中安装软件可以采用ports方式安装,非常方便 ,会自动处理软件包依赖问题,
我个人建议用ports方式安装软件.安装方法很简单比如安装mysql
  1. #cd /usr/ports/databases/mysql5-server  
  2. #make install clean ; rehash  

就这么简单


二. 安装Apache

安装Apache要简单点,我这里安装的Apache版本是 httpd-2.0.59,去下载压缩包: http://httpd.apache.org/download.cgi.
下载回来的包叫做 httpd-2.0.59.tar.gz 我们放在 /usr/local/src目录下.
首先进入目录后解压缩:


  1. # cd /usr/local/src  
  2. # tar -zxvf httpd-2.0.59.tar.gz   


然后就会得到 httpd-2.0.50目录,我们进入目录


  1. # cd httpd-2.0.59 


首先配置:

  1. # ./configure --prefix=/usr/local/apache --enable-module=so
  2. 此处的意思把apache安装在 /usr/local/apache目录 --enable-module是动态模块启用  


执行上面的命令,如果没有错误信息,证明配置成功,然后进行编译:

  1. # make   


一两分钟就编译完了,然后进行安装:

  1. # make install   


安装完成后,Apache就存放在 /usr/local/apache目录下了, bin是执行文件的目录,conf是配置文件目录,htdocs是网页的主目录,logs是日志目

录.
Apache通过 bin/apachectl或者bin/httpd来控制启动或者停止.

  1. # /usr/local/apache/bin/httpd -k start #启动apache  
  2. # /usr/local/apache/bin/httpd -k stop #停止apache  
  3. # /usr/local/apache/bin/httpd -k restart #重启apache   


然后你可以通过 http://localhost 来测试apache是否安装成功,如果出现apache的页面则安装成功,否则请检查上面的步骤


如果采用手动自己编译安装php的话,要下载一些辅助包,我下了 jpeg  freetype  zlib libpng libxml2 gd共6个tar.gz包安装方法和前面的类似,在 ./configure的时候可以不指定目录,让他默认安装,还有,要注意安装顺序,, 顺序就是我列出来的的顺序



三. 安装PHP

我们使用的PHP版本是5.2.0,先去下载: http://www.php.net/downloads.php, 下回来的包叫做 php-5.2.0.tar.gz, 放到/usr/local/src目录

下.
首先进入该目录后解压缩:

  1. # cd /usr/local/src  
  2. # tar -zxvf php-5.2.0.tar.gz   


解压后进入目录:

  1. # cd php-5.2.0  


进行配置,这一步比较关键,一定要设置好,特别是要考虑到你要支持什么,比如GD库,xml,mysql等等,如果想知道详细的配置,执行 ./configure 

--help来获得:

  1. # ./configure \  
  2.  --with-apxs2=/usr/local/apache/bin/apxs \  
  3.  --with-xml \ #支持xml  
  4.  --with-mysql \ #支持mysql  
  5.  --with-gd \ #支持GD库  
  6.  --with-zlib \ #支持zlib  
  7.  --with-jpeg \  
  8.  --with-png \   

这里配置的就是上面我说的安装了6个辅助包,在这要一并加上..


如果上面的配置没有错误的话,那么应该最后会显示感谢使用PHP等字样,那么证明配置成功,如果上面的配置选项不支持的话,会提示错误.
比如你没有安装mysql,那么--with-mysql就无法使用,所以一定要注意对应选项系统是否能够支持,如果出现错误,那么就先安装对应的程序,或

者去掉相关选项.
配置之后就进行编译:

  1. # make   


编译成功后出现"Build complete."字样,那么就可以进行安装了:

  1. # make install   


安装完成后把/usr/local/src/php-4.3.8/php.ini-dist复制到/usr/local/lib/,并重命名为php.ini

 
  1. # cp /usr/local/src/php-4.3.8/php.ini-dist /usr/local/lib/php.ini   


基本到这里PHP就安装成功了,如果中间出现错误,除了在配置的时候没有选对选项之后一般都不出现错误.



四. 整合Apache+PHP

为了让Apache能够直接解析php,我们还要进行一些配置.
首先进入apache的配置文件目录:

  1. # cd /usr/local/apache/conf   


然后用vi打开配置文件httpd.conf:

  1. # vi httpd.conf   


在httpd.conf文件中,添加

  1. AddType application/x-httpd-php .php  
  2. AddType application/x-httpd-php-source .phps   


应该将以上两句添加在其他AddType之后。

确保文件中有以下一句话,没有就自己添加在所有LoadModule之后。

  1. LoadModule php5_module  modules/libphp5.so   


好了,在vi中使用":wq"保存httpd.conf文件,退出vi。启动apache server:

  1. # /usr/local/apache/bin/httpd start  


现在apache就能够运行php了,写个文件测试一下,在/usr/local/apache/htdocs目录下,新建一个phpinfo.php文件,
文件中只有一行代码:

  1. <?php phpinfo() ?>  


保存此文件, 在你的浏览器中输入http://localhost/phpinfo.php,你应该看到PHP的系统信息。
如果出现错误,比如提示你下灾phpinfo.php,那么apache就是还无法解析php文件,那么请仔细检查以上的操作是否正确.


好,到这里,基本上Mysql+Apache+PHP安装完成,那么就能做Web服务器了


.
分享到:
评论
2 楼 rootsoso 2008-12-06  
有所帮助 
1 楼 GooKings 2007-07-25  
不错呀

相关推荐

    在FreeBSD8系统部署Apache+MySQL+PHP5.pdf

    在FreeBSD8系统中部署Apache+MySQL+PHP5环境是一项涉及多个步骤的过程,包括安装Web服务器Apache、数据库服务器MySQL以及PHP脚本解释器。以下是对整个部署过程的知识点详细说明。 首先,安装Apache2.2。通过FreeBSD...

    FreeBSD11下安装Apache24

    FreeBSD11下安装Apache24的详细过程

    freeBSD配置php mysql apache nginx

    freeBSD配置php mysql apache nginx,里面有详细的说明,一步步告诉大家怎样配置。freeBSD配置php mysql apache nginx,里面有详细的说明,一步步告诉大家怎样配置。

    freebsd+nginx+php+mysql+zend系统优化防止ddos +傻瓜式ports安装

    MySQL是一个广泛使用的开源关系型数据库管理系统,在FreeBSD环境下安装MySQL同样非常简单。 - 进入MySQL服务器目录: ```bash cd /usr/ports/databases/mysql51-server ``` - 执行以下命令来配置并安装MySQL: ...

    FreeBSD 6.2 架设Web服务器(APACHE+PHP+MYSQl+ZEND)-

    Apache、PHP、MySQL和Zend是构建Web服务器的关键组件,在FreeBSD系统中,这些可以通过ports来安装和配置。Ports系统提供了一种便捷的方式,允许用户定制安装所需的软件,并自动处理依赖关系,避免了在Linux中手动...

    FreeBSD下Apache、PHP、SVN、Memcached、PostgreSQL、MySql的安装笔记

    在安装过程中,选择合适的软件包或ports来安装Apache、PHP、PostgreSQL、MySQL和Memcached。基础软件包可以通过`pkg`命令管理,而ports则需要使用`make`和`make install`命令构建。 "03.基本配置.txt"是整个环境中...

    FreeBSD7.0编译安装nginx+php+mysql[定义].pdf

    在 FreeBSD 7.0 中编译安装 Nginx、PHP 和 MySQL 需要具备一定的技术基础,需要了解 FreeBSD 的 ports 系统、编译安装软件包的过程 본文将指导您如何从源代码编译安装 Nginx、PHP 和 MySQL,并进行基本配置。...

    FreeBSD11下安装MySQL数据库

    在FreeBSD 11.0操作系统中安装MySQL数据库是一个涉及多个步骤的过程,这对于熟悉Linux或Unix环境的系统管理员来说是一项常见的任务。MySQL是一款流行的关系型数据库管理系统,广泛应用于Web应用程序和服务器端的数据...

    FreeBSD7.1+postfix+sasl2+mysql+maildrop+ExtMan+Mailman+ClamAv

    6. **ExtMan 安装与配置**:在安装过程中需要选择支持 MySQL 的版本,并根据实际需求调整安装选项。 综上所述,通过组合使用 FreeBSD、Postfix、MySQL、Maildrop、ExtMan、Mailman、ClamAV 等组件,可以构建一个...

    Apache+Php+Mysql整合配置

    本文将详细介绍如何在UNIX系统环境下,具体是FreeBSD5.4,进行Apache、PHP与MySQL的整合配置。以下步骤将指导你完成从软件准备到最终配置的全过程。 **一、环境准备** - **操作系统:** FreeBSD5.4 - **软件版本:** ...

    freebsd中安装与配置jdk 1.5+mysql+tomcat

    - 如果在安装过程中没有设置,可以使用以下命令: ```sql SET PASSWORD FOR 'root'@'localhost' = PASSWORD('your_new_password'); FLUSH PRIVILEGES; ``` 10. **远程访问MySQL** - 编辑`/etc/my.cnf`,在`...

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

    在本教程中,我们将深入探讨如何在FreeBSD 7.0操作系统上手动编译和安装Nginx、PHP和MySQL,构建一个基本的LEMP(Linux、Nginx、MySQL、PHP)堆栈。请注意,虽然这个教程适用于FreeBSD 7.0,但一些步骤可能与较新...

    JAMPP:用于 FreeBSD Jails 的 XAMPP Apache + MySQL + PHP + Perl

    执照BSD 2 条款背景用于 FreeBSD Jails 的 XAMPP Apache + MySQL + PHP + Perl目标设定的好处用于 FreeBSD Jails 的 XAMPP Apache + MySQL + PHP + Perl警告jampp 是实验性的,还没有准备好投入生产。 风险自负。...

    freebsd9.0 web apache mysql php ftp

    在FreeBSD 9.0操作系统中,搭建一个包含Apache、MySQL、PHP和FTP服务的Web服务器是一项基础且重要的任务,这通常用于创建动态网站或Web应用程序。以下将详细阐述整个安装过程的关键步骤。 首先,确保系统已经安装了...

    FreeBSD7.0编译安装nginx+php+mysql借鉴.pdf

    在本教程中,我们将详细介绍如何在FreeBSD 7.0操作系统上手动编译和安装Nginx、PHP和MySQL,而不是使用预构建的ports。这是一个适用于熟悉Unix/Linux环境且希望自定义安装配置的用户的过程。 首先,我们来看一下每...

Global site tag (gtag.js) - Google Analytics