LNMP服务器环境配置实例分析
发布时间:2023-02-17 13:36:17 所属栏目:LNMP 来源:互联网
导读:LNMP服务器环境配置实例分析 一、系统环境 系统平台:rhel 5.4(系统要求:linux 2.6+ 内核) Nginx版本:Nginx/1.0.15 mysql 版本:5.1.35-log source distribution PHP版本:PHP-5.2.10 二、安装准备 1、获取相关开源程序并安装 redhat等其他linux发行版可
LNMP服务器环境配置实例分析 一、系统环境 系统平台:rhel 5.4(系统要求:linux 2.6+ 内核) Nginx版本:Nginx/1.0.15 mysql 版本:5.1.35-log source distribution PHP版本:PHP-5.2.10 二、安装准备 1、获取相关开源程序并安装 redhat等其他linux发行版可从安装光盘中找到这些程序库的rpm包redhat可以直接利用centos的rpm包安装。 可以用rpm安装以下包,如有关联包,安装时一起安装。 gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers 以上包如果安装了的话,不需要再安装了。 2、rpm包搜索网站 3、Nginx软件包准备 Nginx所需要的软件包可以从下面位置获取,也可以记住名字在google中搜索。 Nginx-0.7.61.tar.gz PHP-5.2.10.tar.gz PHP-5.2.10-fpm-0.5.11.diff.gz MysqL-5.1.35.tar.gz libiconv-1.13.tar.gz libmcrypt-2.5.8.tar.gz mcrypt-2.6.8.tar.gz memcache-2.2.5.tgz mhash-0.9.9.9.tar.gz pcre-7.9.tar.gz eaccelerator-0.9.5.3.tar.bz2 pdo_MysqL-1.0.2.tgz imagemagick.tar.gz imagick-2.2.2.tgz 三、安装PHP 5.2.10(fastcgi模式) 编译安装PHP 5.2.10所需的支持库: 1.安装libiconv 对文本进行编码间的转换,用它来处理中文各种编码之间的转换。 #tar zxvf libiconv-1.13.tar.gz #cd libiconv-1.13/ #./configure --prefix=/usr/local #make #make install cd ../ 2.安装libmcrypt 实现加密功能的库。 # tar zxvf libmcrypt-2.5.8.tar.gz # cd libmcrypt-2.5.8/ # ./configure # make # make install # /sbin/ldconfig # 注:这里不要退出去了。 # cd libltdl/ # ./configure --enable-ltdl-install # make # make install # cd http://www.cnblogs.com/ 3. 安装mhash(哈稀函数库) # tar zxvf mhash-0.9.9.9.tar.gz # cd mhash-0.9.9.9/ # ./configure # make # make install # cd ../ ln -s /usr/local/lib/libmcrypt.la /usr/lib/libmcrypt.la ln -s /usr/local/lib/libmcrypt.so /usr/lib/libmcrypt.so ln -s /usr/local/lib/libmcrypt.so.4 /usr/lib/libmcrypt.so.4 ln -s /usr/local/lib/libmcrypt.so.4.4.8 /usr/lib/libmcrypt.so.4.4.8 ln -s /usr/local/lib/libmhash.a /usr/lib/libmhash.a ln -s /usr/local/lib/libmhash.la /usr/lib/libmhash.la ln -s /usr/local/lib/libmhash.so /usr/lib/libmhash.so ln -s /usr/local/lib/libmhash.so.2 /usr/lib/libmhash.so.2 ln -s /usr/local/lib/libmhash.so.2.0.1 /usr/lib/libmhash.so.2.0.1 4. 安装mcrypt # tar zxvf mcrypt-2.6.8.tar.gz # cd mcrypt-2.6.8/ # /sbin/ldconfig #./configure # make # make install # cd ../ 注:dg库所需要安装包,可以采用rpm包来安装,减少时间,由于PHP已经集成gd库,但前提支持包应事先安装,如zlib,png,jpeg,freetype等。 四、编译安装MysqL 建立MysqL组,建立MysqL用户并且加入到MysqL组中 # groupadd MysqL # useradd MysqL -g MysqL [root@linux lnmp]# tar zxvf MysqL-5.1.35.tar.gz [root@linux lnmp]# cd MysqL-5.1.35 # ./configure --prefix=/usr/local/MysqL --without-debug --with-extra-charsets=gbk --with-extra-charsets=all --enable-assembler --with-pthread --enable-thread-safe-client --with-MysqLd-ldflags=-all-static /*不带共享库的形式编译MysqLd*/ --with-client-ldflags=-all-static --with-big-tables --with-readline /*要采用rpm方式安装ncurses或tar包安装*/ --with-ssl /*要采用rpm方式安装openssl*/ --with-embedded-server --enable-local-infile --with-plugins=innobase # make && make install # /usr/local/MysqL/bin/MysqL_install_db --user=MysqL #以MysqL身份初始化数据库 # cp ./support-files/MysqL.server /etc/init.d/MysqL #复制MysqL启动服务至系统 # cp ./support-files/my-medium.cnf /etc/my.cnf # chmod 755 /etc/init.d/MysqL # cd /usr/local/MysqL/ #切换到cd /usr/local/MysqL/目录下 # chown -r MysqL . #改变当前目录下的所有者为MysqL用户 # chown -r MysqL var #修改数据库目录的权限 # chgrp -r MysqL . #改变当前目录下的MysqL用户的文件为MysqL组 # /usr/local/MysqL/bin/MysqLd_safe --user=MysqL& # /usr/local/MysqL/bin/MysqLadmin -u root password 'admin' #设置管理员密码 [root@linux html]# /usr/local/MysqL/bin/MysqL -u root -p #测试密码输入 enter password: welcome to the MysqL monitor. commands end with ; or g. your MysqL connection id is 5 server version: 5.1.35-log source distribution type 'help;' or 'h' for help. type 'c' to clear the current input statement. MysqL> q /*退出MysqL*/ # chkconfig --add MysqL #添加MysqLd服务到系统 # chkconfig MysqL on #打开myslqd服务 # service MysqL start #启动MysqL #/usr/local/MysqL/bin/MysqLadmin shutdown #关闭数据库 #查看MysqL端口的打开情况 # netstat -tunlp active internet connections (only servers) proto recv-q send-q local address foreign address state pid/p name tcp 0 0 0.0.0.0:3306 0.0.0.0:* listen 2936/ #查看是否启动: #ps -ef | grep MysqL 注:在配置过程中,整体的配置思路从上往下,其中的一些功能可以用在实际的配置过程中,主要用于测试环节中。 MysqL的优化部分这里没有给出,需要参考其它资料。 五、编译安装PHP 这个地方是最重要的,因为默认情况下Nginx和PHP他俩之间是一点感觉没有的。在之前搭建过apache+PHP,apache+PHP编译后生成的是模块文件,而Nginx+PHP需要PHP生成可执行文件才可以,所以要利用fastcgi技术来实现Nginx与PHP的整合,这个只要我们安装时启用fastcgi即可。此次我们安装PHP不仅使用了fastcgi,而且还使用了PHP-fpm这么一个东东,PHP-fpm说白了是一个管理fastcgi的一个管理器,它作为PHP的插件存在,在安装PHP时要想使用PHP-fpm就需要把PHP-fpm以补丁的形式安装到PHP中,而且PHP要与PHP-fpm版本一致,这是必须的,切记! # tar zxvf PHP-5.2.10.tar.gz # gzip -cd PHP-5.2.10-fpm-0.5.11.diff.gz | patch -d PHP-5.2.10 -p1 # 将PHP-5.2.10-fpm-0.5.11.diff.gz以补丁形式加到PHP-5.2.10里面 # cd PHP-5.2.10/ # ./configure --prefix=/usr/local/PHP --with-config-file-path=/usr/local/PHP/etc --with-MysqL=/usr/local/MysqL --with-MysqLi=/usr/local/MysqL/bin/MysqL_config --with-iconv-dir=/usr/local --with-freetype-dir --with-jpeg-dir (编辑:莱芜站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |