第一次练习在服务器上安装Linux并完成相关服务的配置,有点小紧张,嘻嘻!为顺利完成跨平台之旅,特将过程记录下来以供回味!
下面是准备工作,很重要!
本次实验安装的是64位CentOS 5.4的linux系统,并已经制成光驱镜像!插入光驱,服务器感应到之后便可进行安装,在定制组件阶段注意选择安装包时应该选择GCC编译环境(很重要!)。此外为了显得更加专业一点,我并没有定制GNOME或KED桌面环境,安装完成之后的界面即为纯命令行显示。
MySQL+PHP 5.3.8+Nginx的安装就是接下来要做的事!
安装以上服务肯定会需要很多包包,我没有将它们统一打包在*.iso镜像文件中,而是在服务器上利用scp命令(scp是什么东东,我也是从网上找到的,自己找!)从本地电脑(本人手提上)获取,如下:
scp –r 222.31.76.39:/root/setuptar/ /opt/setuptar/
一. 安装MySQL
1. 解压MySQL安装包:tar –xzvf mysql-5.5.10-linux2.6-x86_64.tar.gz
2. 将解压后的安装包拷贝至/usr/local目录,并重命名为mysql
mv mysql-5.5.10-linux2.6-x86_64.tar.gz /usr/local/mysql
3. cd /usr/local/mysql
4. groupadd mysql
5. useradd –g mysql mysql
6. chown –R mysql.mysql .
#使用子目录中的scripts中的脚本“mysql_install_db”安装MySQL
- scripts/mysql_install_db --use=mysql --datadir=data/
- chown –R root .
- chown –R mysql data
#建立MySQL的配置文件
10. cp support-files/my-medium.cnf /etc/my.cnf
11. cp support-files/mysql.server /etc/init.d/mysql
12. ps –ef | grep mysqld 之后删掉mysql相关进程
13. bin/mysqld_safe –user=mysql &
14. bin/mysqladmin –u root password ****** --default-character-set=latin1
OK!如果想让MySQL每次开机启动,执行以下命令:
/sbin/chkconfig --del mysql
/sbin/chkconfig --add mysql
二. 安装GD库
安装GD2(gd-2.0.35.tar.gz)之前应先安装如下软件包:
zlib-1.2.5.tar.gz libpng-1.2.10.tar.bz2 freetype-2.3.7.tar.bz2 curl-7.21.3.tar.gz gettext-0.17.tar.gz
1.解压安装包: tar –xzvf xxx.tar.gz 或tar -xjvf xxx.tar.bz2
2.进入解压目录: cd xxx/
3.定义安装路径: ./configure --prefix=/usr/local/xxx(安装gettext时不需要指定路径)
4.make && make install
安装jpeg库
1.tar –xzvf jpegsrc.v6b.tar.gz
2.cd jpeg-6b/
3.cp /usr/share/libtool/config.* ./
4.mkdir /usr/local/jpeg6
5.mkdir /usr/local/jpeg6/include
6.mkdir /usr/local/jpeg6/lib
7.mkdir /usr/local/jpeg6/bin
8.mkdir /usr/local/jpeg6/man/man1
10. ./configure –enable-static –enable-shared –prefix=/usr/local/jpeg6
11. make && make install
安装GD库
1: tar –xzvf gd-2.0.35.tar.gz
2: cd gd-2.0.35.tar.gz/
3: vi gd_png.c
将大约在第16行处的#include “png.h”改为#include “/usr/local/libpng/include/png.h”
4: ./configure –prefix=/usr/local/gd –with-jpeg=/usr/local/jpeg6/ --with-png=/usr/local/libpng/ --with-freetype=/usr/local/freetype/ --with-zlib=/usr/local/zlib/
5: make && make install(如果第一次运行报错的话,可以再次运行解决)
三. 安装PHP 5.3.8
1:tar -xzvf php-5.3.8.tar.gz
2:cd php-5.3.8/
3:./configure --prefix=/usr/local/php5 --with-gd=/usr/local/gd --with-jpeg-dir=/usr/local/jpeg6/ --with-zlib-dir=/usr/local/zlib/ --with-freetype-dir=/usr/local/freetype/ --enable-trace-vars --with-mysql=/usr/local/mysql/ --enable-mbstring --with-curl=/usr/local/curl/ --enable-soap --enable-zip --enable-fastcgi --enable-fpm --with-config-file-path=/usr/local/php5/etc --with-mysqli=/usr/local/mysql/bin/mysql_config
4:vi ./ext/gd/libgd/gd_compat.c
将# include <png.h>
改为 # include "/usr/local/libpng/include/png.h"
5:make && make install
6:cp ./sapi/fpm/php-fpm.conf /usr/local/php5/etc/
7:install -v -m644 php.ini-production /usr/local/php5/etc/php.ini
执行完第七步之后在/usr/local/php5/etc目录下将有php-fpm.conf 和 php.ini 文件,下面需要对这两个文件进行配置。
8:修改php.ini、需要修改的参数如下
post_max_size = 2048M
upload_tmp_dir = /tmp
upload_max_filesize = 2048M
date.timezone = PRC
9:修改php-fpm.conf、需要修改的参数如下
process_control_timeout = 5s
listen = 127.0.0.1:9001 (php使用该端口号和Nginx通信)
pm.start_servers = 20 (去掉前面的“;”号,下同)
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests = 500
php_flag[display_errors] = on
10:cd /usr/local/php5/sbin
11: ./php-fpm 运行
四. 安装Ngnix
1: tar –xzvf nginx-1.0.8.tar.gz
#为了确保在nginx中能够使用正则表达式进行更灵活的配置,系统需要安装PCRE包
2: tar –xzvf pcre-8.20.tar.gz
此外还需要openssl包,zlib包,这两个我已经事先装好.
3: cd nginx-1.0.8/
4: ./configure –prefix=/usr/local/nginx –with-http_ssl_module –with-zlib=/opt/setuptar/zlib-1.2.5(源码包路径) –-with-pcre=/opt/setuptar/pcre-8.20(源码包路径)
5: groupadd robin
6: useradd –g robin robin
7: chown –R robin.robin /usr/local/nginx
8: cd /usr/local/nginx/sbin
9: ./nginx