1. 程式人生 > >HTTP服務(下)

HTTP服務(下)

訪問 shared har proxy rest scan 使用 install figure

源碼編譯安裝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 

技術分享圖片
技術分享圖片
技術分享圖片

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 

技術分享圖片
我們再做一些附加操作,我們知道,prefork模式下,我們的子進程用戶一般是apache,,這裏現在是damen,所以我們將其稍做修改
修改之前:
技術分享圖片

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

技術分享圖片

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服務
systemctl daemon-reload
systemctl start httpd24
systemctl enable httpd24

技術分享圖片


源碼編譯安裝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

技術分享圖片

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

技術分享圖片

6.瀏覽器端進行測試

技術分享圖片

7.安裝並編輯數據庫,測試php與數據庫的連接

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

創建賬號
技術分享圖片
編輯測試php腳本

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

技術分享圖片
瀏覽器端訪問
技術分享圖片

二、以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 

技術分享圖片

systemctl daemon-reload
systemctl start php-fpm.service 

技術分享圖片

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

技術分享圖片
瀏覽器端訪問
技術分享圖片
技術分享圖片
至此,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
技術分享圖片

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

技術分享圖片
瀏覽器端訪問查看php信息
技術分享圖片
技術分享圖片

HTTP服務(下)