php 配置

 

php

php不能單獨使用都是與httpd結合使用 結合的方式主要是兩種一種為模塊方式服務于httpd,一種為單獨服務方式服務httpd

兩種方式不能共存

安裝軟件包也不相同 網上有官方中文手冊 http://php.net/download-docs.php php對中文的支持需要安裝php-mbstring php對mysql的支持需要安裝php-mysql

php運行原理

PHP總共有三個模塊:內核、Zend引擎、以及擴展層;PHP內核用來處理請求、文件流、錯誤處理等相關操作;Zend引擎(ZE)用以將源文件轉換成機器語言,然后在虛擬機上運行它;擴展層是一組函數、類庫和流,PHP使用它們來執行一些特定的操作。比如,我們需要mysql擴展來連接MySQL數據庫;當ZE執行程序時可能會需要連接若干擴展,這時ZE將控制權交給擴展,等處理完特定任務后再返還;

最后,ZE將程序運行結果返回給PHP內核,它再將結果傳送給SAPI層,最終輸出到瀏覽器上。 PHP實現了一個典型的動態語言執行過程:拿到一段代碼后,經過詞法解析、語法解析等階段后,源程序會被翻譯成一個個指令 (opcodes),然后ZEND虛擬機順次執行這些指令完成操作。

以上引用網上有php運行原理的文章

以模塊方式于httpd結合

安裝php

Installing:
 php                          x86_64    5.4.16-36.el7_1        base  1.4 M
Installing for dependencies:
 apr                          x86_64    1.4.8-3.el7            base  103 k  ##php與httpd鉤子
 apr-util                     x86_64    1.5.2-6.el7            base  92 k
 httpd                        x86_64    2.4.6-40.el7.centos    base  2.7 M  ##php以模塊方式為httpd提供給服務,所以php依賴httpd服務
 httpd-tools                  x86_64    2.4.6-40.el7.centos    base  82 k
 libzip                       x86_64    0.10.1-8.el7           base  48 k
 mailcap                      noarch    2.1.41-2.el7           base  31 k
 php-cli                      x86_64    5.4.16-36.el7_1        base  2.7 M  ##執行php腳本的命令行接口,服務于php和CGI
 php-common                   x86_64    5.4.16-36.el7_1        base  563 k

[root@centos7 ~]# rpm -ql php          ##php以模塊方式為httpd提供給服務,所以php依賴httpd服務
/etc/httpd/conf.d/php.conf             ##配置httpd如何處理用戶請求調用php模塊
/etc/httpd/conf.modules.d/10-php.conf  ##httpd加載php模塊的配置    
/usr/lib64/httpd/modules/libphp5.so    ##安裝后,php自身為httpd的模塊
/usr/share/httpd/icons/php.gif        
/var/lib/php/session                   ##php保持的用戶會話文件,php追蹤用戶用的。session是有有效期的。  

[root@centos7 ~]# rpm -ql php-common  ##php的公共組件,也就是常用組件
/etc/php.d
/etc/php.d/curl.ini
/etc/php.d/fileinfo.ini
/etc/php.d/json.ini
/etc/php.d/phar.ini
/etc/php.d/zip.ini
/etc/php.ini                          ##配置php解釋器工作環境;

以單獨服務方式于httpd結合

安裝php-fpm

Installing:
 php-fpm                     x86_64    5.4.16-36.el7_1      base        1.4 M ##以獨立守護進程的方式提供php動態資源服務
Installing for dependencies:
 libzip                      x86_64    0.10.1-8.el7         base         48 k
 php-common                  x86_64    5.4.16-36.el7_1      base        563 k

[root@centos7 ~]# rpm -ql php-fpm
/etc/logrotate.d/php-fpm
/etc/php-fpm.conf           ###配置fpm守護進程的工作模式;怎么與客戶端交互的(httpd)
/etc/php-fpm.d
/etc/php-fpm.d/www.conf
/etc/sysconfig/php-fpm

[root@centos7 ~]# rpm -ql php-common  ##php的公共組件,也就是常用組件
/etc/php.d
/etc/php.d/curl.ini
/etc/php.d/fileinfo.ini
/etc/php.d/json.ini
/etc/php.d/phar.ini
/etc/php.d/zip.ini
/etc/php.ini                         #####配置php解釋器工作環境;


FastCGI 進程管理器(FPM)

FPM(FastCGI 進程管理器)用于替換 PHP FastCGI 的大部分附加功能,對于高負載網站是非常有用的。

它的功能包括:

支持平滑停止/啟動的高級進程管理功能;

可以工作于不同的 uid/gid/chroot 環境下,并監聽不同的端口和使用不同的 php.ini 配置文件(可取代 safe_mode 的設置);

stdout 和 stderr 日志記錄;

在發生意外情況的時候能夠重新啟動并緩存被破壞的 opcode;

文件上傳優化支持;

"慢日志" - 記錄腳本(不僅記錄文件名,還記錄 PHP backtrace 信息,可以使用 ptrace或者類似工具讀取和分析遠程進程的運行數據)運行所導致的異常緩慢;

fastcgi_finish_request() - 特殊功能:用于在請求完成和刷新數據后,繼續在后臺執行耗時的工作(錄入視頻轉換、統計處理等);

動態/靜態子進程產生;

基本 SAPI 運行狀態信息(類似Apache的 mod_status);

基于 php.ini 的配置文件。

原創文章,作者:yyw,如若轉載,請注明出處:http://www.www58058.com/56552

(0)
yywyyw
上一篇 2016-11-01 10:11
下一篇 2016-11-01 10:14

相關推薦

  • 第十五周作業

    1、總結sed和awk的詳細用法; sed:     模式空間:sed是一種在線編輯器、行編輯器,一次處理一行內容,在處理時,把當前處理的行存儲在臨時緩沖區當中,并在該緩沖區中完成后續的處理,該緩沖區被稱為”模式空間”。     保持空間:在模式空間中處理完一行內容后會繼續處理下一行,但是對于處…

    Linux干貨 2017-04-18
  • 推薦-btrfs文件系統介紹及操作

    btrfs文件系統支持寫時復制功能,對備份很有幫助。在單個硬盤時,btrfs是沒有意義的。     核心特性:         多物理卷支持:btrfs可由多個底層物理卷組成;支持RAID,以聯機“添加”、“移除”,“修改”;       …

    Linux干貨 2016-06-01
  • 馬哥教育網絡班N22期+第3周課程練習

    馬哥教育網絡班N22期+第3周課程練習 1、列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次,則只顯示一次即可。 示例: [root@Red Hat Enterprise Linux Desktop]# who | cut -d' &#039…

    Linux干貨 2016-08-29
  • lvm邏輯卷管理

    #LVM 邏輯卷管理 一、創建pv        創建pv可以在物理硬盤(裸盤上創建),MBR類型的分區(要更改分區類型為linux lvm: 8e )。GPT分區也要更改分區類型為8e00 Linux LVM 。    還可以在RAID上創建。注意要在沒有數據的分區上…

    Linux干貨 2016-09-02
  • M20 – 1- 第三周博客:Linux中的權限以及特殊權限

    上一篇講到了用戶與用戶組,相信大家都明白了Linux中用戶與用戶組的含義和用處,那接下來講的就是Linux中設置用戶與用戶組有使用權限。 Linux用戶權限 何為權限,權限(privilege)是指某個特定的用戶具有特定的系統資源使用權力,而權限又有哪幾種呢。 Linux用戶中主要針對三類著三種權限:讀、寫、執行,而Linux中存在著目錄與文件,而目錄的權限…

    Linux干貨 2016-08-08
  • 第十六周作業

    1、源碼編譯安裝LNMP架構環境;     安裝nginx:      1)安裝依賴包 ]# yum groupinstall “Development Tools” “Development Libraries” -y ]# yum install wget openssl-devel ncurses-de…

    2017-05-02
欧美性久久久久