nginx+php裝配

來源:互聯網
上載者:User
nginx+php安裝

一、.安裝nginx請參考:?http://qingwei201314.iteye.com/blog/1729174

二、安裝php:

  1. 擷取並解壓 PHP 原始碼:

    tar zxf php-x.x.x

  2. 配置並構建 PHP。在此步驟您可以使用很多選項自訂 PHP,例如啟用某些擴充等。 運行 ./configure --help 命令來獲得完整的可用選項清單。 在本樣本中,我們僅進行包含 PHP-FPM 和 MySQL 支援的簡單配置。

    cd ../php-x.x.x./configure --enable-fpm --with-mysqlmakesudo make install

  3. 建立設定檔,並將其複製到正確的位置。

    cp php.ini-development /usr/local/php/php.inicp /usr/local/etc/php-fpm.conf.default /usr/local/etc/php-fpm.confcp sapi/fpm/php-fpm /usr/local/bin

  4. 需要著重提醒的是,如果檔案不存在,則阻止 Nginx 將請求發送到後端的 PHP-FPM 模組, 以避免遭受惡意指令碼注入的攻擊。

    將 php.ini 檔案中的配置項?cgi.fix_pathinfo?設定為?0?。

    開啟 php.ini:

    vim /usr/local/php/php.ini

    定位到?cgi.fix_pathinfo=?並將其修改為如下所示:

    cgi.fix_pathinfo=0

  5. 在啟動服務之前,需要修改 php-fpm.conf 設定檔,確保 php-fpm 模組使用 www-data 使用者和 www-data 使用者組的身份運行。

    vim /usr/local/etc/php-fpm.conf

    找到以下內容並修改:

    ; Unix user/group of processes; Note: The user is mandatory. If the group is not set, the default user's group;       will be used.user = www-datagroup = www-data

    然後啟動 php-fpm 服務:

    /usr/local/bin/php-fpm

    本文檔未涵蓋對 php-fpm 進行進一步配置的資訊,如果您需要更多資訊,請查閱相關文檔。

  6. 配置 Nginx 使其支援 PHP 應用:

    vim /usr/local/nginx/conf/nginx.conf

    修改預設的 location 塊,使其支援 .php 檔案:

    location / {    root   html;    index  index.php index.html index.htm;}

    下一步配置來保證對於 .php 檔案的請求將被傳送到後端的 PHP-FPM 模組, 取消預設的 PHP 配置塊的注釋,並修改為下面的內容:

    location ~* \.php$ {    fastcgi_index   index.php;    fastcgi_pass    127.0.0.1:9000;    include         fastcgi_params;    fastcgi_param   SCRIPT_FILENAME    $document_root$fastcgi_script_name;    fastcgi_param   SCRIPT_NAME        $fastcgi_script_name;}

    重啟 Nginx。

  7. 如果使用thinkphp,配置pathinfo:
  8. 修改第6步中的部分內容如下:
  9. location ~ \.php {            fastcgi_pass   127.0.0.1:9000;            fastcgi_index  index.php;            set $path_info "";            set $real_script_name $fastcgi_script_name;            if ($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") {                set $real_script_name $1;                set $path_info $2;            }            fastcgi_param  SCRIPT_FILENAME  $document_root$real_script_name;            fastcgi_param  SCRIPT_NAME      $real_script_name;            fastcgi_param PATH_INFO $path_info;            include        fastcgi_params;        }

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.