2

如何编译安装软件

  • 编译安装是Linux安装软件的重要方式
  • 编译前的准备工作:./configure
  • 编译:make
  • 安装:make install

安装PHP

1.下载软件

wget PHP镜像源文件下载的链接

2.解压软件

tar -zxvf mirror(第一步下载下来的镜像文件)

3.激活FPM支持 (编译PHP时需要 --enable-fpm 配置选项来激活FPM支持)

yum install gcc gcc++ libxml2-devel

4.进入到解压后的PHP目录中

cd php-*/

5.执行configure

./configure --prefix=/usr/local/php7 --enable-fpm

使用 --prefix 参数来设置软件安装路径 使用 --enable-fpm 来激活FPM支持

6.执行编译

make

7.完成编译

make install

完成PHP的安装后可编写 test.php 文件来对PHP进行测试

安装mysql

1.下载软件

wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.18.tar.gz

2.解压软件

tar -zxvf mysql-5.7.18.tar.gz

3.安装一些解除依赖的工具

yum install cmake gcc-c++ ncurses-devel perl-Data-Dumper boost boost-doc boost-devel

4.进入mysql目录

cd mysql-5.7.18

5.使用cmake命令进行编译 (最新版的mysql都是使用cmake进行编译)

cmake
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DSYSCONFDIR=/etc \
-DMYSQL_USER=mysql \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/data/mysql.sock \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DENABLED_DOWNLOADS=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_DEBUG=0 \
-DMYSQL_MAINTAINER_MODE=1 \
-DWITH_SSL:STRING=bundled \
-DWITH_ZLIB:STRING=bundled \
-DDOWNLOAD_BOOST=1 \
-DWITH_BOOST=/usr/share/doc/boost-doc-1.41.0/

6.执行编译

make

7.完成编译

make install

安装完成之后 可直接在文件夹内 输入 myslqd 启动 mysql服务 之后在输入mysql进行测试

安装apache

下载网址 http://httpd.apache.org/

1.下载apache

wget http://mirrors.tuna.tsinghua.edu.cn/apache//httpd/httpd-2.4.26.tar.gz

2.解压apache

tar -zxvf httpd-2.4.26.tar.gz

3.进入解压后的文件夹内

cd httpd-2.4.26

4.执行 configure

./configure --prefix=/usr/local/apache2

报错:

clipboard.png

解决:

wget http://archive.apache.org/dist/apr/apr-1.4.5.tar.gz

wget http://archive.apache.org/dist/apr/apr-util-1.3.12.tar.gz

tar -zxvf apr-1.4.5.tar.gz

tar -zxvf apr-util-1.3.12.tar.gz

mv apr-1.4.5 apr

mv apr-util-1.3.12 apr-util

mv apr apr-util httpd-2.4.26/srclib/

wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.40.tar.gz

mv pcre-8.40.tar.gz pcre.tar.bz2

tar -zxvf pcre.tar.bz2

cd pcre-8.40/

./configure --prefix=/usr/local/pcre-8.40

make

make install

在安装完所需依赖后,进入apache目录

cd ~/httpd-2.4.26

再次使用 configure 并配置好相关参数

./configure --prefix=/usr/local/apache --with-pcre=/usr/local/pcre-8.40/bin/pcre-config --with-include-apr

5.使用make

make

6.使用make install

make install

7.测试apache是否安装成功

cd /usr/local/apache/bin/     进入apache中的bin目录下

./apachectl -k start     启动apache服务

之后打开浏览器查看

如果无法访问,解决方案如下:

firewall-cmd --zone=public --add-port=80/tcp --permanent
给防火墙添加 80 端口可访问

systemctl restart firewalld.service
重启防火墙

之后刷新浏览器

安装nginx

nginx官网:nginx.org

1.下载nginx

wget http://nginx.org/download/nginx-1.12.0.tar.gz

2.解压nginx

tar -zxvf nginx-1.12.0.tar.gz

3.进入到解压后的nginx目录

cd nginx-1.12.0

4.执行configure命令,并依赖 pcre 包

./configure --prefix=/usr/local/nginx --with-pcre=../pcre-8.40/

5.执行make

make

6.执行make install

make install

7.测试nginx是否安装成功

cd /usr/local/nginx/sbin/
进入 nginx 下的 sbin 目录

查看 apache 是否启用且占用 80 端口

ps aux | grep httpd

如果apache已启用,则 杀死其全部进程

kill -9 apache进程号,有多个则用空格隔开(例:47198 47199 47200 47201 53309)

在杀死apache全部进程后,启用 nginx服务

./nginx

在启动完nginx服务后,可在浏览器中查看 nginx 是否已经安装成功

安装nginx成功后,配置 php-fpm

1.启动php-fpm进程

cd /usr/local/php7/sbin/

./php-fpm

如果报错如下:

clipboard.png

解决方法:

cd /usr/local/php7/etc/

使用 ll 查看 文件夹下的文件详情如下:

clipboard.png

则重命名 php-fpm.conf.default文件

mv php-fpm.conf.default php-fpm.conf

修改文件名完成后重新启动 php-fpm 服务

../sbin/php-fpm

持续报错如下:

clipboard.png

解决方法:

编辑 php-fpm.conf 文件,第125行

vim php-fpm.conf

在进入到 php-fpm.conf 中,输入 > :125 之后 回车
可看到语句:include=/usr/local/php7/etc/php-fpm.d/*.conf

则根据语句提示,进入相关文件夹下修改文件名

cd /usr/local/php7/etc/php-fpm.d/

mv www.conf.default www.conf

在修改完成之后,进入 php目录下的 sbin 目录下,再次启动 php-fpm

./php-fpm

即可启动成功

之后再修改 nginx 中的配置文件

cd /usr/local/nginx/conf/

vim nginx.conf

配置PHP如下:

location ~ \.php {
        #    root           html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  /index.php;

            include     /usr/local/nginx/conf/fastcgi_params;

            fastcgi_split_path_info  ^(.+\.php)(/.+)$;
            fastcgi_param  PATH_INFO  $fastcgi_path_info;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        }

配置完成之后,退出 conf 目录 进入 nginx 下的 html 目录
编写测试 PHP 文件,之后通过浏览器访问 查看PHP是否能够解析
如能正常解析,则配置完成

LAMP中的PHP-FPM配置

1.进入到php-fpm.conf的所在目录中

cd /usr/local/php7/etc/

2.编辑 php-fpm.conf

vim php-fpm.conf

进入 该配置文件当中 搜索 :include ,可见这么一句话:include=/usr/local/php7/etc/php-fpm.d/*.conf
根据此配置提示,退出vim后,进入到相关目录中
cd php-fpm.d/
ls后可见:

clipboard.png

之后 通过vim编辑该文件

vim www.conf

在编辑该文件时,注意如下几个参数:
pm.max_children = 10 用于设置最大的子进程数
相关参数,pm开头的意义基本如此

LAMP中Nginx的配置

1.进入到nginx的配置文件目录下

cd /usr/local/nginx/conf/

2.编辑nginx.conf的配置文件

vim nginx.conf

3.相关参数
worker_processes 表示nginx启动多少个子进程


Q_Kun
37 声望8 粉丝

一个转型中的PHPer