以下的安装都是在FreeBSD 10.2版本上选择ports的安装方式完成的,其实选择pkg方式的话,安装后的配置过程也大致相同。
第一步,安装更新Ports:
# portsnap fetch&&portsnap extract&&portsnap update
第二步,Nginx安装:
# cd /usr/ports/www/nginx
# make BATCH=YES install clean
装完nginx之后,请务必编辑/etc/rc.conf文件,末尾增加一行
nginx_enable="YES"
启动nginx
service nginx start
第三步,安装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的安装:
当前的FreeBSD 10的ports中有多个php版本,即php55、php56和php5(缺省使用php-5.4版本),这里选择安装PHP5.5。
# cd /usr/ports/lang/php55
# make BATCH=YES install clean
需要注意的是,记得开启下面三个 PHP 编译选项(默认已经开启)
[X] CLI Build CLI version
[X] CGI Build CGI version
[X] FPM Build FPM version (experimental)
配置 Nginx以启用FastCGI:
# vi /usr/local/etc/nginx/nginx.conf
user www;
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name localhost;
location / {
root /usr/local/www/nginx;
index index.html index.htm;
}
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/local/www/nginx-dist;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ \.php$ {
root /usr/local/www/nginx;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
}
编辑/etc/rc.conf文件
php_fpm_enable="YES"
# service nginx start
# service php-fpm start
第五步,安装PHP5的扩展:
现在php和mysql都安装好了,但现在的php5还不能操作Mysql数据库,或者说现在的php还缺乏mysql的驱动,另一方面,现在的php还有相当多重要的也是常用的扩展没有安装,这两个问题可以一并解决,就是安装ports里面的php55-extensions:
cd /usr/ports/lang/php55-extensions
make config
当前的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
# make BATCH=YES install clean
复制php.ini配置文件
# cp /usr/local/etc/php.ini-production /usr/local/etc/php.ini
注意记住每次修改nginx的配置文件后都要重启apache以使之生效:
# service nginx restart
第六步,其他可选的软件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/nginx-dist/