用Ports在FreeBSD10配置Apache2.4+PHP5.5+MySQL5.5

FreeBSD系统的一个非常方便的地方就是它的ports,以下的安装都是在FreeBSD 10.2版本上选择ports的安装方式完成的,其实选择pkg方式的话,安装后的配置过程也大致相同。

第一步,安装更新Ports:

# portsnap fetch&&portsnap extract&&portsnap update

第二步,Apache安装:

# cd /usr/ports/www/apache24
# make BATCH=YES install clean

装完Apache之后,请务必要在 /etc/rc.conf 文件中添加对apache的支持和启用
apache24_enable="YES"

以下是一些在实际使用中常常会遇到的问题备用:
1) 配置文件的位置:
在FreeBSD中位于/usr/local/etc/apache24/httpd.conf,在其他版本可能位置和名称有所不同。
2) 缺省的主目录:
/usr/local/www/apache24/data
3) log文件的位置
log文件的作用是很大的,Apache有二个log文件,一个是所有登陆本apache服务器的IP记录,/var/log/httpd- access.log,文件记录了登
陆的ip,时间,浏览器类型等;另一个是联机错误记录文件, /var/log/httpd-error.log,这个文件对于调试apache参数是很有作用的。两
个文件都是文本文件,可以由nano等文本编辑器来浏览、编辑,记录文件的位置及文件名是由 httpd.conf中的相应配置来改变。
4) 启动、停止和重新启动httpd服务器的运行:
#apachectl start(stop restart graceful)
5) 开机自动启动apache24服务:
需要编辑/etc/rc.conf文件,在其中加入以下语句:
apache24_enable="YES"
6) 自动支持中文的问题
网页的缺省字符集有参数 AddDefaultCharset ISO-8859-1
这时候在浏览器浏览中文网页的时候,会乱码,需要手动设置编码方式为GBK或GB2312才能显示中文
去掉注释,修改为AddDefaultCharset GB2312就可以了。
7) Apache状态信息
在安装完 Apache 后,我们需要不断了解服务器的系统各方面的情况。Apache2内建了server-status及server-info二种查看服务器信息的方
法。 server-status是指服务器状态信息,我们可以了解Apache目前运行的情形,包括占用的系统资源、目前联机数量等。server-info 主
要是显示Apache的版本、加载的模块信息等。
为使用这两项功能,我们必须先修改 httpd.conf。
首先要把ExtendedStatus On前面的注释去掉。
然后分别找到<Location>和<Location>这两段,把两段内前面的注释都去掉,并设置好访问权限。不**安全的话,可以设置allow from all.
然后就可以在浏览器以http://hostname/server-info访问了。
个人用户目录的问题:
修改主配置文件,注释掉#UserDir public_html这句,再在用户test的主目录/home/test下面创建一个index.html文件,就可以浏览:
http://yourip/~test了。
8) 其他一些我认为比较重要的配置参数:
ServerRoot:指出服务器保存其配置、出错和日志文件等的根目录。
Listen:允许你绑定Apache服务到指定的IP地址和端口上,以取代默认值
DocumentRoot:你的文档的根目录。默认情况下,所有的请求从这个目录进行应答。
HostnameLookups:指定记录用户端的名字还是IP地址

第三步,安装MySQL:

cd /usr/ports/databases/mysql55-server
make BATCH=YES install clean

MySQL的安装也很简单,安装完成之后请注意将这段代码加到/etc/rc.conf文件中即可启用MySQL服务了

mysql_enable="YES"

拷贝MySQL的配置文件,系统默认提供了四个,需要根据服务器的配置来选择适合的配置文件,MySQL的大部分配置都可以通过此配置文件来完成,也可以在此配置文件中查看数据库的各种配置信息。

cp /usr/local/share/mysql/my-medium.cnf /etc/my.conf

如果你的服务器足够好,耶可以用下面的配置文件

cp /usr/local/share/mysql/my-large.cnf /etc/my.cnf
启动mysql服务器

/usr/local/etc/rc.d/mysql-server start
由于是刚刚安装的mysql,root密码是没有的所以你也可以使用下面的命令修改密码(有很多方法了,自己谷歌)

/usr/local/bin/mysqladmin -uroot password 123456

第四步,PHP的安装:

当前的FB10.1的ports中有多个php版本,即php55、php56和php5(缺省使用php-5.4版本),这里选择安装PHP5.5。

# cd /usr/ports/lang/php55
# make BATCH=YES install clean

需要注意的是,这样只安装了php5,但是现在的apache24还不能解析和支持php,还需要:

# cd /usr/ports/www/mod_php55
# make BATCH=YES install clean

编译安装完成之后,还需要在apache的配置文件(文件位置见上)中加入以下语句:

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

增加设定index.php为默认首页
DirectoryIndex index.php index.html

第五步,安装PHP5的扩展:

现在php和mysql都安装好了,但现在的php5还不能操作Mysql数据库,或者说现在的php还缺乏mysql的驱动,另一方面,现在的php还有相当多重要的也是常用的扩展没有安装,这两个问题可以一并解决,就是安装ports里面的php55-extensions:

cd /usr/ports/lang/php55-extensions
make config
make BATCH=YES install clean

当前的php55-extensions里的选择一共有很多个,我就不一一列举,一般至少如mysql GD zlib iconv等肯定是要选择的。这里我们需要手动选择需要的PHP扩展组件,你可以参考下面directadmin默认加载的扩展组件

bcmath bz2 calendar ctype curl dom exif fileinfo filter ftp gd gettext

hash iconv json mbstring mcrypt mysql mysqli

OPcache openssl PDO pdo_mysql pdo_sqlite Phar posix session SimpleXML soap sockets
sqlite3 tokenizer

xml xmlreader xmlwriter xsl zlib zip

复制php.ini配置文件
# cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini

注意记住每次修改apache的配置文件后都要重启apache以使之生效:

# apachectl restart

使用ports安装的好处就是自动配置好httpd.conf文件了,等扩展装完你就重启apache服务就OK了。

第六步,其他可选的软件phpmyadmin:

phpmyadmin就是一个操作MySQL数据库的Web界面,适合于不熟悉SQL语法的懒人们:

# cd /usr/ports/databases/phpmyadmin
# make BATCH=YES install clean

这时,你会发现直接访问http://localhost/phpmyadmin无法使用,

这时我们需要建立一个软连接,执行下面的命令

ln -s /usr/local/www/phpMyAdmin/ /usr/local/www/apache24/data/

发表评论

电子邮件地址不会被公开。 必填项已用*标注