CentOS 6.2编译安装Nginx1.0.14+MySQL5.5.22+PHP5.3.10步骤分享

CentOS6.2编译安装Nginx1.0.14+MySQL5.5.22+PHP5.3.10步骤分享

在CentOS6.2上编译安装Nginx1.0.14+MySQL5.5.22+PHP5.3.10,需要有一定的Linux基础知识和编译工具的使用经验。下面是该过程的详细步骤:

1. 安装必要的依赖

使用以下命令安装编译Nginx和PHP必要的依赖库:

yum groupinstall "Development Tools"
yum install wget
yum install openssl-devel pcre-devel zlib-devel
yum install epel-release
yum install libjpeg-devel libpng-devel freetype-devel

2. 下载和解压源码

2.1 下载Nginx源码

进入Nginx官网的下载页面(http://nginx.org/en/download.html),下载Nginx1.0.14版本源码:

cd /usr/local/src
wget http://nginx.org/download/nginx-1.0.14.tar.gz

2.2 下载MySQL源码

进入MySQL官网的下载页面(https://dev.mysql.com/downloads/mysql/5.5.html),下载MySQL5.5.22版本源码:

wget https://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.22.tar.gz

2.3 下载PHP源码

进入PHP官网的下载页面(https://www.php.net/downloads.php),下载PHP5.3.10版本源码:

wget https://www.php.net/distributions/php-5.3.10.tar.gz

2.4 解压源码

分别对下载的三个源码包进行解压:

tar -zxvf nginx-1.0.14.tar.gz
tar -zxvf mysql-5.5.22.tar.gz
tar -zxvf php-5.3.10.tar.gz

3. 编译安装MySQL

进入MySQL源码目录,执行以下命令编译MySQL:

cd mysql-5.5.22
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql
make
make install

编译完之后将MySQL PATH加入环境变量:

echo "export PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile
source /etc/profile

最后,执行以下命令启动MySQL:

cd /usr/local/mysql/
./bin/mysqld_safe &

4. 编译安装PHP

进入PHP源码目录,执行以下命令编译PHP:

cd php-5.3.10
./configure --prefix=/usr/local/php \
--with-mysql=/usr/local/mysql \
--with-mysqli=/usr/local/mysql/bin/mysql_config \
--with-pdo-mysql=/usr/local/mysql \
--with-gd \
--with-iconv \
--with-zlib \
--enable-xml \
--enable-bcmath \
--enable-shmop \
--enable-sysvsem \
--enable-inline-optimization \
--enable-mbregex \
--enable-fpm \
--enable-mbstring \
--enable-ftp \
--with-openssl \
--enable-gd-native-ttf \
--with-curl \
--with-gettext \
--enable-zip \
--enable-pcntl \
--enable-soap \
--enable-opcache

然后执行以下命令编译安装:

make
make install

5. 编译安装Nginx

进入Nginx源码目录,执行以下命令编译Nginx:

cd nginx-1.0.14
./configure --prefix=/usr/local/nginx \
--with-http_stub_status_module \
--with-http_sub_module \
--with-http_ssl_module \
--with-http_gzip_static_module \
--with-pcre \
--with-ipv6 \
--with-http_realip_module \
--with-http_image_filter_module

然后执行以下命令编译安装:

make
make install

6. 配置Nginx和PHP

6.1 配置文件

分别进入Nginx和PHP的安装目录,将Nginx配置文件和PHP配置文件进行备份:

cd /usr/local/nginx
cp conf/nginx.conf conf/nginx.conf.bak
cd /usr/local/php/etc
cp php-fpm.conf.default php-fpm.conf
cp php.ini-development php.ini

6.2 修改Nginx配置文件

编辑Nginx配置文件:

vim /usr/local/nginx/conf/nginx.conf

添加如下内容:

location ~ [^/]\.php(/|$) {
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_index index.php;
    include fastcgi.conf;
}

6.3 修改PHP配置文件

编辑PHP的fpm配置文件和ini配置文件:

vim /usr/local/php/etc/php-fpm.conf

找到以下语句,将前面的分号去掉:

;listen.allowed_clients = 127.0.0.1
listen.allowed_clients = 127.0.0.1
vim /usr/local/php/etc/php.ini

找到以下语句,将前面的分号去掉:

;cgi.fix_pathinfo=1
cgi.fix_pathinfo=1

7. 启动服务

7.1 启动MySQL

执行以下命令启动MySQL:

cd /usr/local/mysql/
./bin/mysqld_safe &

7.2 启动PHP

执行以下命令启动PHP:

/usr/local/php/sbin/php-fpm

7.3 启动Nginx

执行以下命令启动Nginx:

/usr/local/nginx/sbin/nginx

示例说明

示例1:在Nginx和PHP的配置文件中使用HTTPS协议

进入Nginx的安装目录,编辑nginx.conf文件:

vim /usr/local/nginx/conf/nginx.conf

找到以下代码:

server {
    listen       80;
    server_name  localhost;

    location / {
        root   html;
        index  index.html index.htm;
    }
}

在此代码块上方添加如下代码:

server {
    listen       443;
    server_name  localhost;

    ssl on;
    ssl_certificate /usr/local/nginx/conf/server.crt;
    ssl_certificate_key /usr/local/nginx/conf/server.key;

    location / {
        root   html;
        index  index.html index.htm;
    }
}

保存并退出文件。

进入PHP的安装目录,编辑php-fpm.conf文件:

vim /usr/local/php/etc/php-fpm.conf

找到以下代码:

;user = nobody
;group = nobody

将上述代码修改为以下代码:

user = nginx
group = nginx

将上述代码下一行添加以下代码解决502 Bad Gateway问题:

listen.owner = nginx
listen.group = nginx
listen.mode = 0660

最后,执行以下命令重启Nginx和PHP:

/usr/local/nginx/sbin/nginx -s reload
kill -USR2 `ps ax | grep php-fpm | grep -v grep | awk '{ print $1}'`

示例2:在Nginx中启用Gzip压缩

进入Nginx的安装目录,编辑nginx.conf文件:

vim /usr/local/nginx/conf/nginx.conf

找到以下代码:

http {
...
}

在该代码块中添加以下代码:

gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.0;
gzip_comp_level 2;
gzip_types text/plain application/x-javascript text/css application/xml;

保存并退出文件。

然后,执行以下命令重启Nginx:

/usr/local/nginx/sbin/nginx -s reload

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:CentOS 6.2编译安装Nginx1.0.14+MySQL5.5.22+PHP5.3.10步骤分享 - Python技术站

(0)
上一篇 2023年5月14日
下一篇 2023年5月14日

相关文章

  • CentOS下编译安装python包管理安装工具pip教程

    下面是“CentOS下编译安装python包管理安装工具pip教程”的完整攻略,内容包括安装依赖、下载PIP、编译安装PIP、使用PIP安装Python包等内容,最后会附上两个示例说明。 CentOS下编译安装python包管理安装工具pip教程 安装依赖 在编译安装PIP之前,需要安装一些依赖包。在CentOS下可以使用以下命令安装: sudo yum i…

    Linux 2023年5月14日
    00
  • Linux cupsaccept命令

    Linux cupsaccept 命令的作用与使用方法 Linux cupsaccept 命令用于启用打印机。它可以帮助用户在 Linux 系统中启用已经停用的打印机。 Linux cupsaccept 命令使用方法 cupsaccept 命令的基本语法如下: cupsaccept [选项] [打印机名称] ` 其中,选项是可选的。打印机名称是要启用的打印机…

    Linux 2023年5月10日
    00
  • Linux vmstat命令

    首先我们来介绍一下 vmstat 命令。它是一款 Linux 系统下的工具,用于实时监测系统的资源使用情况,包括 CPU 使用率、内存使用率、磁盘 I/O 等等。vmstat 命令可以通过一些参数对其对监测结果进行调整,包括监测时间间隔、显示方式等等。 安装 vmstat 命令通常已经内置在 Linux 系统中,不需要额外安装。 使用方法 vmstat 命令…

    Linux 2023年3月28日
    00
  • Jexus Web Server完整图文配置教程

    接下来我将为你详细讲解“Jexus Web Server完整图文配置教程”的完整攻略。 Jexus Web Server完整图文配置教程 简介 Jexus是一个安全、高效、易用的.NET Web服务器,支持HTTP、HTTPS、FASTCGI协议,可以运行ASP.NET代码,支持PHP、Python等动态网页,还可以用来部署静态网页、文件共享和反向代理等等。…

    Linux 2023年5月24日
    00
  • Linux下CoreSeek及PHP扩展模块的安装

    下面是详细的“Linux下CoreSeek及PHP扩展模块的安装”的攻略,该攻略适用于CentOS 7系统。 安装CoreSeek 1. 安装依赖 yum install -y gcc gcc-c++ automake autoconf libtool libxml2 libxml2-devel curl-devel libjpeg-devel libpng…

    Linux 2023年5月14日
    00
  • 使用Linux安装JDK1.7教程详解

    使用Linux安装JDK1.7教程详解 在Linux系统上安装Java开发工具包(JDK)是Java应用程序开发的基础。本教程将详细讲解如何在Linux系统上安装JDK1.7。 步骤1:检查系统是否安装了Java 在开始安装之前,请先检查系统是否已经安装了Java。可以使用以下命令: java -version 如果系统中已经安装了Java,那么将会输出Ja…

    Linux 2023年5月14日
    00
  • 嵌入式Linux—Framebuffer应用编程

    Framebuffer 应用编程 Frame的意思是帧,buffer的意思是缓冲区。Framebuffer就是一块内存(硬件设备),里面保存着一帧图像。 ioctl()函数解析 ioctl()函数非常强大。不同的驱动程序内部会实现不同的 ioctl() ,可以使用各种 ioctl() 跟驱动程序交互:可以传数据给驱动程序,也可以从驱动程序中读出数据。 头文件…

    Linux 2023年4月10日
    00
  • linux下可执行bin程序提示not found/no such file or directory/not executable

      我们经常在执行二进制bin程序时,会遇到提示not found/no such file or directory/not executable等错误信息,在什么情况下会出现这种问题呢,我们一起罗列下几种常见的几种场景: 1.可执行bin程序确实不存在 这个错误就比较低级了,你的可执行bin没有打包或者拷贝进来,执行的时候,自然找不到了 2.可执行bin…

    Linux 2023年4月11日
    00
合作推广
合作推广
分享本页
返回顶部