溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

linux中虛擬機(jī)上安裝php的方法

發(fā)布時間:2021-05-27 10:02:14 來源:億速云 閱讀:353 作者:小新 欄目:編程語言

小編給大家分享一下linux中虛擬機(jī)上安裝php的方法,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

linux虛擬機(jī)上安裝php的方法:1、安裝依賴包;2、安裝libmcrypt;3、通過“wget”下載PHP并使用“tar -zxvf”進(jìn)行解壓安裝;4、配置域名;5、分割日志;6、在主機(jī)的hosts里,將域名指向虛擬機(jī)的IP即可。

本文操作環(huán)境:linux5.9.8系統(tǒng)、PHP7.0.2版,DELL G3電腦

linux 虛擬機(jī) 安裝 php-7.0.2

1.安裝依賴包  

yum -y install libxml2 libxml2-devel openssl openssl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel
yum -y install bzip2 bzip2-devel libcurl libcurl-devel gmp gmp-devel readline readline-devel libxslt libxslt-devel

2. 安裝libmcrypt

    -> wget http://sourceforge.net/projects/mcrypt/files/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz
    -> tar -zxvf libmcrypt-2.5.8.tar.gz
    -> cd libmcrypt-2.5.8
    -> ./configure
    -> make && make install

3. 安裝PHP7

   -> wget http://cn2.php.net/get/php-7.0.2.tar.gz  下載 php-7.0.2.tar.gz
    -> tar -zxvf php-7.0.2.tar.gz 解壓縮
    -> cd php-7.0.2 進(jìn)入目錄
    -> ./configure --prefix=/usr/local/php --with-config-file-path=/etc --enable-fpm --with-fpm-user=www --with-fpm-group=www --enable-inline-optimization --disable-debug --disable-rpath --enable-shared --enable-soap --with-libxml-dir --with-xmlrpc --with-openssl --with-openssl-dir --with-mcrypt --with-mhash --with-pcre-regex --with-pcre-dir --with-sqlite3 --with-zlib --with-zlib-dir --enable-bcmath --with-iconv --with-bz2 --enable-calendar --with-curl --with-cdb --enable-dom --enable-exif --enable-fileinfo --enable-filter --enable-ftp --with-gd --enable-gd-native-ttf --enable-gd-jis-conv --with-jpeg-dir --with-png-dir --with-freetype-dir --with-gettext --with-gmp --enable-json --enable-mbstring --enable-mbregex --enable-mbregex-backtrack --with-libmbfl --with-onig --enable-pdo --with-mysqli=mysqlnd --enable-mysqlnd-compression-support --with-pdo-mysql=mysqlnd --with-pdo-sqlite --with-readline --enable-session --enable-shmop --enable-simplexml --enable-sockets --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-wddx --with-xsl --enable-zip --with-pear --enable-opcache

注:

        --prefix=/usr/local/php         指定 php 安裝目錄
        --with-config-file-path=/etc     設(shè)置php.ini的搜索路徑。默認(rèn)為PREFIX/lib
        --enable-fpm                     打上PHP-fpm 補丁后才有這個參數(shù),CGI方式安裝的啟動程序
        --with-fpm-user=www 
        --with-fpm-group=www
        --enable-inline-optimization     優(yōu)化線程
        --disable-debug                 關(guān)閉調(diào)試模式
        --disable-rpath                 關(guān)閉額外的運行庫文件 
        --enable-shared                 編譯共享庫,默認(rèn)yes
        --enable-soap                    soap模塊
        --with-libxml-dir                 打開libxml2庫的支持
        --with-xmlrpc                    打開xml-rpc的c語言 
        --with-openssl                     openssl的支持,加密傳輸時用到的
        --with-mcrypt                     mcrypt算法(函數(shù)庫需要安裝)
        --with-mhash                     mhash算法(函數(shù)庫需要安裝)
        --with-pcre-regex                 定 PCRE 包含文件和庫文件路徑
        --with-sqlite3 
        --with-zlib                     打開zlib庫的支持
        --enable-bcmath                 打開圖片大小調(diào)整,用到zabbix監(jiān)控的時候用到了這個模塊
        --with-iconv
        --with-bz2                         打開對bz2文件的支持
        --enable-calendar                 打開日歷擴(kuò)展功能
        --with-curl                     打開curl瀏覽工具的支持
        --with-cdb 
        --enable-dom 
        --enable-exif                     圖片的元數(shù)據(jù)支持 
        --enable-fileinfo 
        --enable-filter 
        --with-pcre-dir                 perl的正則庫安裝位置
        --enable-ftp                     打開ftp的支持
        --with-gd                         打開gd庫的支持 
        --with-openssl-dir
        --with-jpeg-dir                 打開對jpeg圖片的支持
        --with-png-dir                     打開對png圖片的支持 
        --with-zlib-dir                    打開zlib庫的支持
        --with-freetype-dir             打開對freetype字體庫的支持
        --enable-gd-native-ttf            支持TrueType字符串函數(shù)庫
        --enable-gd-jis-conv 
        --with-gettext                     打開gnu 的gettext 支持,編碼庫用到
        --with-gmp 
        --enable-json
        --enable-mbstring                  多字節(jié),字符串的支持
        --enable-mbregex 
        --enable-mbregex-backtrack 
        --with-libmbfl
        --with-onig
        --enable-pdo
        --with-mysqli=mysqlnd             mysql安裝目錄,對mysql的支持
        --with-pdo-mysql=mysqlnd
        --with-pdo-sqlite
        --with-readline
        --enable-session
        --enable-shmop
        --enable-simplexml
        --enable-sockets                  打開 sockets 支持
        --enable-sysvmsg
        --enable-sysvsem
        --enable-sysvshm
        --enable-wddx
        --with-xsl                         打開XSLT文件支持,擴(kuò)展了libXML2庫 ,需要libxslt軟件
        --enable-zip                     打開對zip的支持 
        --enable-mysqlnd-compression-support 
        --with-pear                      打開pear命令的支持,PHP擴(kuò)展用的 
        --enable-opcache

-> 報錯解決

        報錯1-> configure: error: Don't know how to define struct flock on this system, set --enable-opcache=no
        解決1-> 編輯 /etc/ld.so.conf 加入/usr/local/lib,在執(zhí)行l(wèi)dconfig
   -> make
    -> make install

    -> 配置
    -> cp php.ini-development /etc/php.ini 復(fù)制配置文件 php.ini-development
    -> cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
    -> vim /usr/local/php/etc/php-fpm.conf
       
       pid = /var/run/php-fpm.pid 去掉前面的分號
       error_log = /data/logs/php-fpm/php-fpm.log 去掉前面的分號
    -> cd /usr/local/php/etc/php-fpm.d
    -> cp www.conf.default www.conf 根據(jù)需求配置
    -> /usr/local/php/sbin/php-fpm 啟動php-fpm
    -> kill -INT `cat /var/run/php-fpm.pid` 關(guān)閉php-fpm   
       /usr/local/php/var/run/php-fpm.pid
    -> kill -USR2 `cat /var/run/php-fpm.pid` 重啟php-fpm

4. 配置域名

-> cd /usr/local/nginx/conf/vhost/
    -> vim www.test.com.conf
        upstream testphpfpm 
        {
            server 127.0.0.1:9000;
        }
        log_format  testaccess  '$remote_addr - $remote_user [$time_local] "$request" '
                 '$status $body_bytes_sent "$http_referer" '
                 '"$http_user_agent" $http_x_forwarded_for';
        server 
        {
            listen    80;
            server_name xxx.xxx.xxx;
            index  index.shtml index.html index.htm;
            root /data/www/project;
            
            ssi on;
            ssi_silent_errors on;
            ssi_types text/shtml;
            #error_page 404 = http://xxx.xxx.xxx;
            location ~ \.php$ 
            {
                alias  /data/www/project;
                fastcgi_pass  testphpfpm;
                fastcgi_index  index.php;
                include fastcgi.conf;
                
            }
            
    /*下面兩個IF 是兼容 CI框架  否則CI框架項目無法使用*/
    if ($request_uri ~* "^/(static|data|install|\.)/.*"){
                set $rule  '1';
            }
            if ($rule !~ '1'){
                rewrite ^/(.+)$ /index.php?/$1 last;
            }
            
            
            access_log  /data/logs/nginx/xxx.xxx.xxx.log  testaccess;
        }
    -> :wq 保存退出

5. 分割日志

  -> 創(chuàng)建腳本目錄
    -> cd /data
    -> mkdir scripts
    -> cd scripts
    -> vim nginx_log_splid.sh
        #!/bin/sh
        LOGDIR ="/data/logs/nginx"
        FILEDAY = `date -d "-1 days" +%Y%m%d`
        /bin/mv  $nginx_log_dir/www.test.com.log $LOGDIR /www.test.com.$FILEDAY.log
        kill -USR1 `cat /usr/local/nginx/logs/nginx.pid`
    -> :wq 
    -> crontab -e 添加一條定時任務(wù)
        0 0 * * * /data/scripts/nginx_log_splid.sh 每晚0點執(zhí)行nginx_log_splid.sh文件
測試  /usr/local/nginx/sbin/nginx -t 
提示  nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
     nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
即為配置成功。
重啟  /usr/local/nginx/sbin/nginx -s reload

6. 主機(jī)訪問虛擬機(jī)項目只需要完成下面配置 ^_^

在/usr/local/nginx/conf/vhost目錄配置后,在主機(jī)的hosts里,將域名指向虛擬機(jī)的IP即可

以上是“l(fā)inux中虛擬機(jī)上安裝php的方法”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI