收藏 分享(赏)

linux+nginx+php+mysql环境配置指南.doc

上传人:精品资料 文档编号:10954023 上传时间:2020-01-27 格式:DOC 页数:27 大小:2.69MB
下载 相关 举报
linux+nginx+php+mysql环境配置指南.doc_第1页
第1页 / 共27页
linux+nginx+php+mysql环境配置指南.doc_第2页
第2页 / 共27页
linux+nginx+php+mysql环境配置指南.doc_第3页
第3页 / 共27页
linux+nginx+php+mysql环境配置指南.doc_第4页
第4页 / 共27页
linux+nginx+php+mysql环境配置指南.doc_第5页
第5页 / 共27页
点击查看更多>>
资源描述

1、一、安装 Red Hat Linux开始安装系统跳过光盘测试点击 next选择中文简体选择美国英语式键盘选择基本存储设备选择重新初始化所有填写主机名配置网络,选择自动连接,ip 选择 DHCP选择时区为上海输入密码选择创建自定义布局删除全部的分区后创建分区,类型选标准分区点击生成后,为 swap 选择 2 倍内存大小的空间其他的都给根分区下一步确认后执行分区直接下一步系统类型选择,软件选择现在自定义下一步基本系统的 perl 支持,兼容程序库,基本,大系统性能,安全性工具,性能工具,控制台互联网工具,目录客户端,硬件监控工具,继承 unix 兼容性,网络文件系统客户端,联网工具,调试工具全选服

2、务器的服务器平台,系统管理工具全选Web 服务和数据库全不选系统管理中的系统管理全选虚拟化,桌面,应用程序全不选开发选项卡,选中开发工具,服务器平台开发的全部软件语言支持,默认不变选择完成后开始安装完成后重启即可重启后用 setup 命令,配置防火墙,把 ssh 端口和 www 端口打开!卸载掉系统自带的 httpd查询是否安装了 httpdrpm -q httpd得到结果httpd-2.2.15-5.el6.x86_64卸载rpm -e httpd-2.2.15-5.el6.x86_64发现有 2 个包需要 httpdrootlocalhost # rpm -e httpd-2.2.15-5

3、.el6.x86_64error: Failed dependencies:httpd-mmn = 20051115 is needed by (installed) mod_perl-2.0.4-10.el6.x86_64httpd-mmn = 20051115 is needed by (installed) mod_dav_svn-1.6.11-2.el6.x86_64需要先把那 2 个卸载rpm -e mod_dav_svn-1.6.11-2.el6.x86_64rpm -e mod_perl-2.0.4-10.el6.x86_64仍有包需要rootlocalhost # rpm -e

4、 mod_perl-2.0.4-10.el6.x86_64error: Failed dependencies:perl(Apache2:Const) is needed by (installed) perl-Frontier-RPC-0.07b4p1-9.el6.noarchperl(Apache2:ServerUtil) is needed by (installed) perl-Frontier-RPC-0.07b4p1-9.el6.noarch先卸载rpm -e perl-Frontier-RPC-0.07b4p1-9.el6.noarch此时就可以卸载了rpm -e mod_per

5、l-2.0.4-10.el6.x86_64最后卸载 httpdrpm -e httpd-2.2.15-5.el6.x86_64二、Nginx+PHP+MySQL 详细配置安装前首先使用 yum 命令安装、升级所需的程序库yum -y install 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-dev

6、el ncurses ncurses-devel curl curl-devel ssse2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers1、 安装 Myself目前 web 服务器已经很少有跑静态页面的,如果要跑动态网站那当然就离不开数据库,现在只把步骤贴出来,就不做过多的讲解了#useradd mysql#tar zxvf mysql-5.0.

7、40.tar.gz#cd mysql-5.0.40#./configure -prefix=/usr/local/mysql#make & make install#/usr/local/mysql/bin/mysql_install_db -user=mysql /初始化 MySQL 数据库#chown -R mysql /usr/local/mysql/var#/usr/local/mysql/bin/mysqld_safe & /启动 MySQL#/usr/local/mysql/bin/mysqladmin -u root password 123456 /设置 MySQL 密码#cp

8、 support-files/my-f /etc/f#echo “/usr/local/mysql/bin/mysqld_safe &“ /etc/rc.local2、安装 PCREPCRE 是 perl 所用到的正则表达式,目的是让所装的软件支持正则表达式。默认情况下,Nginx 只处理静态的网页请求,也就是 html.如果是来自动态的网页请求,比如*.php,那么 Nginx 就要根据正则表达式查询路径,然后把*.PHP 交给 PHP 去处理#rpm -qa | grep pcre /查询系统中有没有安装PCRE,一般装系统是默认装有,所以我们要删掉系统自带的#cp /lib/libpcr

9、e.so.0 / /在删除系统自带的 PCRE之前,要先备份一下 libpcre.so.0 这个文件,因为 RPM 包的关联性太强,在删除后没 libpcre.so.0 这个文件时我们装 PCRE 是装不上的#rpm -e -nodeps pcre-6.6-1.1 /删除系统自带的PCRE# tar zxvf pcre-8.00.tar.gz#cd pcre-8.00#cp /libpcre.so.0 /lib/ /把我们删除系统自带的 PCRE 之前备份的 libpcre.so.0 拷贝到/lib 目录下#./configure /配置 PCRE,因为 PCRE 是一个库,而不是像 pach

10、e、php、postfix 等这样的程序,所以我们安装时选择默认路径即可,这样会在后面安装其它东西时避免一些不必要的麻烦,执行完这部后会显示出下图,上面显示了我们对 PCRE 的配置#make & make install3、安装 Nginx安装 Nginx 时只需指定 Nginx 的安装路径即可#tar zxvf nginx-0.8.24.tar.gz#cd nginx-0.8.24#./configure -prefix=/usr/local/nginx /此处在本环节只需指定一个路径#make & make install#/usr/local/nginx/sbin/nginx /启 N

11、ginx#echo “/usr/local/nginx/sbin/nginx“ /etc/rc.localNginx 启动后有两个进程,master 为主进程,worker 为工作进程,如下图在启动完 NGINX 后,我们可以在浏览器中输入 http:/localhost查看,如下图4、安装 PHP既然安装 PHP,那 GD 便是不可少的,在此 GD 的安装不再进行描述1、安装 libpng#tar xvf libpng-1.2.10.tar.tar#cd libpng-1.2.10#./configure -prefix=/usr/local/png#make & make install#

12、ln -s /usr/local/png/lib/* /usr/lib/ 2、安装 jpeg#mkdir /usr/local/jpeg#mkdir /usr/local/jpeg/bin#mkdir /usr/local/jpeg/lib#mkdir /usr/local/jpeg/include#mkdir /usr/local/jpeg/man#mkdir /usr/local/jpeg/man/man1#tar xvf jpegsrc.v7.tar.tar#cd jpeg-7#./configure -prefix=/usr/local/jpeg -enable-shared -ena

13、ble-static#make & make install#ln -s /usr/local/jpeg/lib/* /usr/lib/3、安装 freetype#tar xvf freetype-2.3.9.tar.tar#cd freetype-2.3.9#./configure -prefix=/usr/local/freetype#make & make install4、安装 fontconfig #tar zxvf fontconfig-2.4.2.tar.gz#cd fontconfig-2.4.2#./configure -prefix=/usr/local/fontconfi

14、g -with-freetype-config=/usr/local/freetype/bin/freetype-config#make & make install5、安装 GD#tar zxvf gd-2.0.32.tar.gz#cd gd-2.0.32#./configure -prefix=/usr/local/gd -with-png=/usr/local/png -with-jpeg=/usr/local/jpeg -with- freetype=/usr/local/freetype -with-fontconfig=/usr/local/fontconfig#cp /usr/l

15、ocal/png/include/png.h ./#cp /usr/local/png/include/pngconf.h ./#make & make install6、安装 PHP这个地方是最重要的地方,因为默认情况下 Nginx 和 PHP他俩之间是一点感觉没有的。在之前,很多朋友都搭建过Apache+PHP,Apache+PHP 编译后生成的是模块文件,而 Nginx+PHP需要 PHP 生成可执行文件才可以,所以要利用 fastcgi 技术来实现N ginx 与 PHP 的整合,这个只要我们安装是启用 FastCGI 即可。此次我们安装 PHP 不仅使用了 FastCGI,而且还使用

16、了 PHP-FPM 这么一个东东,PHP-FPM 说白了是一个管理 FastCGI 的一个管理器,它作为 PHP 的插件纯在,在安装 PHP 要想使用 PHP-FPM 时就需要把PHP-FPM 以补丁的形式安装到 PHP 中,而且 PHP 要与 PHP-FPM 版本一致,这是必须的,切记!首先我们把 PHP 和 PHP-FPM 下载到同一目录下,此次用的为php-5.3.0.tar.bz2 和 php-5.3.0-fpm-0.5.12.diff.gz,下载到了同一目录下#tar xvf php-5.3.0.tar.bz2#gzip -cd php-5.3.0-fpm-0.5.12.diff.g

17、z | patch -d php-5.3.0 -p1 /将 php-5.3.0-fpm-0.5.12.diff.gz 以补丁形式加到 php-5.3.0 里面#cd php-5.3.0#./configure -prefix=/usr/local/php -with-gd=/usr/local/gd -with-jpeg-dir=/usr/local/jpeg -with-png-dir=/usr/local/png -with-freetype-dir=/usr/local/freetype -with-mysql=/usr/local/mysql -enable-fastcgi -enab

18、le-fpm注:Nginx+PHP 整合,在安装时必须启用-enable-fastcgi 和 -enable-fpm,这两个选项是做什么的上面已经描述。执行完后系统会提示-enable-fastcgi 是一个未知选项,我们不必理会#make#make install#cp php.ini-dist /usr/local/php/etc/php.ini下面我们就要启动 PHP-FPM#/usr/local/php/sbin/php-fpm start在启动 PHP-FPM 时会报上面这个错误,原因是 PHP-FPM 自己不知道以那个用户和组运行 PHP,所以我们要修改一个文件,把文件中的注释去掉

19、即可(打开文件把红色部分删除),然后 PHP-FPM 会以nobody 用户和组去运行 PHP。#vi /usr/local/php/etc/php-fpm.conf#/usr/local/php/sbin/php-fpm start #ps -aux | grep php#echo “/usr/local/php/sbin/php-fpm start“ /etc/rc.local5、整合 Nginx 与 PHP上面已经讲过,Nginx 自己并不处理动态网页的请求,而且 Nginx将得到的动态请求转交给 PHP,下面我们打开 Nginx 的配置文件看一下#vi /usr/local/nginx

20、/conf/nginx.conf /标的部分是我们后面要修改的看上图,Nginx 已经知道怎么把得到的请求传达给 PHP,Nginx 在得到*.php 请求时,会把请求通过 9000 端口传给 PHP。下面我们把这些注释给去掉即可,如下图注:上面的/usr/local/nginx/html 是我们 PHP 网站放置的路径那么只有 Nginx 自己知道咋找 PHP 了还不行,还需要 PHP 知道咋找 Nginx,这点我们不需要担心,PHP-FPM 已经在配置文件中定义了从哪接受 PHP 请求,我们可以打开配置文件看一下#vi /usr/local/php/etc/php-fpm.conf如上图所

21、示,我们在前面已经看到过 Nginx 是通过本机的 9000 端口将 PHP 请求转发给 PHP 的,而上图我们可以看到 PHP 自己是从本机的 9000 端口侦听数据 ,Nginx 与 PHP 通过本机的 9000 端口完成了数据请求。6、测试我们在 nginx 的配置文件里面已经定义了 PHP 网站的存放路径,路径问/usr/local/nginx/html 下面我们在这个目录下新建一个 PHP 页面测试网页,文件名为test.php,内容如下重启 PHP 与 nginx 后(可以用杀死进程的方式关闭,然后在启动)我们在浏览器中输入 http:/localhost/test.php,出现像如下界面算成功

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报