HTTP服务(下)

源码编译安装http-2.4

1. 安装前准备,安装所需要的rpm包

yum -y groupinstall "Development Tools"
yum -y install pcre-devel apr-devel apr-util-devel openssl-devel

2. 获取源码包和匹配版本的APR

 tar xvf httpd-2.4.35.tar.bz2 -C /usr/local/src/
 tar xvf apr-1.6.5.tar.gz
 tar xvf apr-util-1.6.1.tar.gz 

HTTP服务(下)
HTTP服务(下)
HTTP服务(下)

3.编译安装

cd /usr/local/src/httpd-2.4.35/
./configure --prefix=/app/httpd24 --sysconfdir=/etc/httpd24  --enable-so --enable-ssl --enable-cgi --enable-rewrite --with-zlib --with-pcre --enable-modules=most --enable-mpms-shared=all --with-mpm=prefork --with-included-apr
make -j 2 && make install 

HTTP服务(下)
我们再做一些附加操作,我们知道,prefork模式下,我们的子进程用户一般是apache,,这里现在是damen,所以我们将其稍做修改
修改之前:
HTTP服务(下)

useradd -r -u 48 -c "Apache" -d  /usr/share/httpd  -s  /sbin/nologin apache
vim /etc/httpd24/httpd.conf
User apache
Group apache
/app/httpd24/bin/apachectl restart

HTTP服务(下)

4. 配置systemd来管理http-2.4

手动关闭httpd24
/app/httpd24/bin/apachectl stop
进入/usr/lib/systemd/system下,编辑http24的配置文件,这里我们随便挑了一个服务配置当作模板进行编辑
cd /usr/lib/systemd/system
cp sshd.service httpd24.service
vim httpd24.service 

HTTP服务(下)

重新加载配置文件,并启动http服务
systemctl daemon-reload
systemctl start httpd24
systemctl enable httpd24

HTTP服务(下)


源码编译安装PHP

一、以模块化安装php-7.2.11

1.准备工作,预先安装所需的包,和获取源码包

yum -y install libmcrypt-devel bzip2-devel libxml2-devel
tar xvf php-7.2.11.tar.bz2 -C /usr/local/src/

2.编译安装

cd /usr/local/src/php-7.2.11/
./configure \
--prefix=/app/php \
--enable-mysqlnd \
--with-mysqli=mysqlnd \
--with-openssl \
--with-pdo-mysql=mysqlnd \
--enable-mbstring \
--with-freetype-dir \
--with-jpeg-dir \
--with-png-dir \
--with-zlib \
--with-libxml-dir=/usr \
--enable-xml \
--enable-sockets \
--with-apxs2=/app/httpd24/bin/apxs \
--with-config-file-path=/etc \
--with-config-file-scan-dir=/etc/php.d \
--disable-fileinfo
make -j 2 && make install

HTTP服务(下)

3. 将php配置文件拷到/etc下,并在httpd.conf中添加php模块

[root@localhost ~]# vim /etc/httpd24/httpd.conf
 <IfModule>
        DirectoryIndex index.php index.html
</IfModule>

  AddType application/x-httpd-php .php
  AddType application/x-httpd-php-source .phps

4.检测语法错误,若无问题,重启httpd24.service

 /app/httpd24/bin/httpd -t
 systemctl restart httpd24

5.编辑一个php文件,进行结果测试

vim /app/httpd24/htdocs/info.php

HTTP服务(下)

6.浏览器端进行测试

HTTP服务(下)

7.安装并编辑数据库,测试php与数据库的连接

yum -y install mariadb-server mariadb-devel
vim /etc/my.cnf.d/server.cnf 
    [mysqld]
    skip_name_resolve=ON

创建账号
HTTP服务(下)
编辑测试php脚本

[root@localhost php-7.2.11]# vim /app/httpd24/htdocs/conn.php

HTTP服务(下)
浏览器端访问
HTTP服务(下)

二、以php-fpm安装php-5.6.38

1.获取源码包

tar xvf php-5.6.38.tar.bz2 -C /usr/local/src/

2.进入解压目录下,编译安装

 cd /usr/local/src/php-5.6.38/
 ln -sv /usr/lib64/mysql/libmysqlclient.so /usr/lib
 ./configure --prefix=/app/php56 \
 --with-mysql=/usr \
 --with-openssl \
 --with-mysqli=/usr/bin/mysql_config \
 --enable-mbstring \
 --with-png-dir \
 --with-jpeg-dir \
 --with-freetype-dir \
 --with-zlib \
 --with-libxml-dir=/usr \
 --enable-xml \
 --enable-sockets \
 --enable-fpm \         #即开启php-fpm 
 --with-mcrypt \
 --with-config-file-path=/etc/php56 \
 --with-config-file-scan-dir=/etc/php56/php.d \
 --with-bz2
make -j 2 && make install 

3.根据模板配置php-fpm配置文件和php.ini

cd /app/php56/etc/
cp php-fpm.conf.default php-fpm.conf
vim php-fpm.conf
        pid = run/php-fpm.pid
        error_log = log/php-fpm.log
        pm.status_path = /status
        ping.path = /ping
        ping.response = pong
        pm.max_children = 50
mkdir /etc/php56
cp /usr/local/src/php-5.6.38/php.ini-production /etc/php56/php.ini

4.使用systemd来管理php-fpm

cp /usr/local/src/php-5.6.38/sapi/fpm/php-fpm.service /usr/lib/systemd/system
vim /usr/lib/systemd/system/php-fpm.service 

HTTP服务(下)

systemctl daemon-reload
systemctl start php-fpm.service 

HTTP服务(下)

5.配置http24的配置文件,实现ap,进行测试

DirectoryIndex index.php index.html

AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so

ProxyRequests Off
ProxyPassMatch ^/(.*\.php)$  fcgi://127.0.0.1:9000/app/httpd24/htdocs/$1

 /app/httpd24/bin/httpd -t
 systemctl restart httpd24

6.编辑测试页面,并在浏览器端访问

vim /app/httpd24/htdocs/index.php

HTTP服务(下)
浏览器端访问
HTTP服务(下)
HTTP服务(下)
至此,http2.4以及php的源码编译安装就全部完成了。


PHP加速—xcache的安装

1.获取源码包并编译安装

tar xvf xcache-3.2.0.tar.bz2 -C /usr/local/src/
cd /usr/local/src/xcache-3.2.0/
./configure --enable-xcache --with-php-config=/app/php56/bin/php-config
make && make install

2.将xcache插件写入php配置中

查询扩展模块的API
HTTP服务(下)

mkdir /etc/php56/php.d
cp /usr/local/src/xcache-3.2.0/xcache.ini /etc/php56/php.d
vim /etc/php56/php.d/xcache.ini
systemctl restart php-fpm.service

HTTP服务(下)
浏览器端访问查看php信息
HTTP服务(下)
HTTP服务(下)

猜你喜欢

转载自blog.51cto.com/13866567/2308675