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日

相关文章

  • 手工释放linux内存——/proc/sys/vm/drop_cache

    当在Linux下频繁存取文件后,物理内存会很快被用光,当程序结束后,内存不会被正常释放,而是一直作为caching。这个问题,貌似有不少人在问,不过都没有看到有什么很好解决的办法。那么我来谈谈这个问题。   一、通常情况 先来说说free命令:引用[root@server ~]# free -mtotal used free shared buffers c…

    Linux 2023年4月11日
    00
  • linux– /usr/bin/grub2-editenv: error: invalid environment block.

    1.     go to /boot/grub2/grubenv# mv /boot/grub2/grubenv /home/bak  2.重新创建grubenv文件 # grub2-editenv /boot/grub2/grubenv create      will pass

    Linux 2023年4月13日
    00
  • Docker 环境配置以及问题解决方案

    下面是详细的Docker环境配置以及问题解决方案攻略。 Docker环境配置 1. 安装Docker Docker可以运行在各种操作系统上,包括Windows、Linux、macOS等。你需要按照自己的操作系统进行相应的安装。安装Docker的方法可以参考官方文档:https://docs.docker.com/get-docker/ Windows系统的用…

    Linux 2023年5月14日
    00
  • Linux环境下安装SQL Server 2017

       参考链接 https://docs.microsoft.com/zh-cn/sql/linux/quickstart-install-connect-red-hat?view=sql-server-2017   我的Linux环境是CentOS. 1、下载 Microsoft SQL Server Red Hat 存储库配置文件: sudo curl …

    Linux 2023年4月16日
    00
  • Linux下卸载MySQL8.0版本的操作方法

    Linux下卸载MySQL8.0版本的操作方法 步骤一:停止MySQL服务 在终端或控制台中使用以下命令停止MySQL服务: sudo systemctl stop mysql 步骤二:卸载MySQL软件包 在终端或控制台中执行以下命令,卸载MySQL8.0软件包: sudo apt-get remove mysql-server mysql-client …

    Linux 2023年5月14日
    00
  • CentOS 下yum安装mysql、jdk和tomcat的方法

    下面是“CentOS下yum安装mysql、jdk和tomcat的方法”的详细攻略。 安装MySQL 步骤1:检查系统是否已安装mysql 在终端中输入以下命令: rpm -qa | grep mysql 如果已经安装了MySQL,则会看到输出,否则不会有任何输出。 步骤2:添加MySQL镜像源 在终端输入以下命令: wget -i -c http://de…

    Linux 2023年5月14日
    00
  • Linux系统镜像制作

    Linux系统镜像制作 https://biux.cn/archives/26.htmlhttps://www.cnblogs.com/linuxAndMcu/p/10774020.htmlhttps://www.cnblogs.com/sztom/p/10184766.htmlhttps://developer.aliyun.com/article/481…

    Linux 2023年4月11日
    00
  • Linux time命令

    Linux 的 time 命令是用来计算一个命令的执行时间的。它会返回命令的执行时间以及用户CPU时间、系统CPU时间、子进程CPU时间等统计信息。下面是time命令的用法和实例: time命令用法 time [options] command [argument…] time命令选项 -f FORMAT, –format=FORMAT:自定义输出格式…

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