LNMP环境搭建——PHP篇
生活随笔
收集整理的這篇文章主要介紹了
LNMP环境搭建——PHP篇
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一、源代碼安裝
1.編譯安裝
./configure --prefix=/usr/local/php\ --with-config-file-path=/usr/local/php/etc --with-bz2 --with-curl \ --enable-ftp --enable-sockets --disable-ipv6 --with-gd \ --with-jpeg-dir=/usr/local --with-png-dir=/usr/local \ --with-freetype-dir=/usr/local --enable-gd-native-ttf \ --with-iconv-dir=/usr/local --enable-mbstring --enable-calendar \ --with-gettext --with-libxml-dir=/usr/local --with-zlib \ --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-mysql=mysqlnd \ --enable-dom --enable-xml --enable-fpm --with-libdir=lib64 --enable-bcmath make && make install2.錯誤處理
[ERROR]-1
checking for ZLIB support... no checking if the location of ZLIB install directory is defined... yes configure: error: Cannot find libz[ERROR]-2
checking whether to enable JIS-mapped Japanese font support in GD... no If configure fails try --with-vpx-dir=<DIR> configure: error: jpeglib.h not found.【解決的方法】
wget http://www.boutell.com/gd/http/gd-2.0.33.tar.gz tar zxvf gd-2.0.33.tar.gz cd gd-2.0.33 ./configure --prefix=/usr/local/gd2 make make installibjpeg,能夠用這個庫實現JPG圖片的各種操作;下載:
http://freeware.sgi.com/source/libjpeg/libjpeg-6b.tar.gz,
參考README安裝庫。大體過程例如以下:
[ERROR]-3
If configure fails try --with-xpm-dir=<DIR> configure: error: freetype-config not found.[ERROR]-4
checking whether to enable JIS-mapped Japanese font support in GD... no configure: error: vpx_codec.h not found.[Bzip2 Install]
tar -xzvf bzip2-1.0.6.tar.gz進入解壓后的文件夾:cd bzip2-1.0.6
為編譯做準備。創建libbz2.so動態鏈接庫(這一步非常重要,安裝python的時候假設沒有這一步,python安裝不上bz2模塊):
編譯安裝: make && make install
二、RPM安裝
[root@kallen ~]# rpm -ivh php-common-5.4.40-1.el6.remi.x86_64.rpm warning: php-common-5.4.40-1.el6.remi.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 00f97f56: NOKEY Preparing... ########################################### [100%] file /etc/php.ini from install of php-common-5.4.40-1.el6.remi.x86_64 conflicts with file from package php-common-5.3.3-26.el6.x86_64 file /usr/lib64/php/modules/curl.so from install of php-common-5.4.40-1.el6.remi.x86_64 conflicts with file from package php-common-5.3.3-26.el6.x86_64 file /usr/lib64/php/modules/fileinfo.so from install of php-common-5.4.40-1.el6.remi.x86_64 conflicts with file from package php-common-5.3.3-26.el6.x86_64 file /usr/lib64/php/modules/json.so from install of php-common-5.4.40-1.el6.remi.x86_64 conflicts with file from package php-common-5.3.3-26.el6.x86_64 file /usr/lib64/php/modules/phar.so from install of php-common-5.4.40-1.el6.remi.x86_64 conflicts with file from package php-common-5.3.3-26.el6.x86_64 file /usr/lib64/php/modules/zip.so from install of php-common-5.4.40-1.el6.remi.x86_64 conflicts with file from package php-common-5.3.3-26.el6.x86_64error: Failed dependencies:libmysqlclient.so.18()(64bit) is needed by php-mysql-5.4.40-1.el6.remi.x86_64libmysqlclient.so.18(libmysqlclient_16)(64bit) is needed by php-mysql-5.4.40-1.el6.remi.x86_64libmysqlclient.so.18(libmysqlclient_18)(64bit) is needed by php-mysql-5.4.40-1.el6.remi.x86_64三、YUM安裝
1.PHP-5.4
php5.4于2012年5月8號公布,從php5.4.0開始php增加了一些新特色如:
- Traits支持
- 內置了一個簡單的Webserver
- 提供了數組簡短語法
- 直接對函數返回值進行數組取值
- 終于刪除魔術方法及安全模式
推薦使用 Webtatic EL6的YUM源來安裝php5.4。我們首先安裝Webtatic EL6 YUM源,關于YUM源的安裝配置請參考《在RHEL6中配置YUM源》一文;
rpm -Uvh http://repo.webtatic.com/yum/el6/latest.rpm yum -y install php54w php54w-bcmath php54w-cli \ php54w-common php54w-devel php54w-fpm php54w-gd \ php54w-imap php54w-ldap php54w-mbstring php54w-mcrypt \ php54w-mysql php54w-odbc php54w-pdo php54w-pear \ php54w-pecl-igbinary php54w-xml php54w-xmlrpc \ php54w-opcache php54w-intl php54w-pecl-memcache假設安裝失敗,建議您先卸載曾經的php再進行安裝,使用
yum remove php php-*附帶的php擴展列表:
| php54w mod_php | |
| php54w-bcmath | |
| php54w-cli | php-cgi, php-pcntl, php-readline |
| php54w-common | php-api, php-bz2, php-calendar, php-ctype, php-curl, php-date, php-exif, php-fileinfo, php-ftp, php-gettext, php-gmp, php-hash, php-iconv, php-json, php-libxml, php-openssl, php-pcre, php-pecl-Fileinfo, php-pecl-phar, php-pecl-zip, php-reflection, php-session, php-shmop, php-simplexml, php-sockets, php-spl, php-tokenizer, php-zend-abi, php-zip, php-zlib |
| php54w-dba | |
| php54w-devel | |
| php54w-embedded | php-embedded-devel |
| php54w-enchant | |
| php54w-fpm | |
| php54w-gd | |
| php54w-imap | |
| php54w-interbase | php_database, php-firebird |
| php54w-intl | |
| php54w-ldap | |
| php54w-mbstring | |
| php54w-mcrypt | |
| php54w-mssql | |
| php54w-mysql | php-mysqli, php_database |
| php54w-odbc | php-pdo_odbc, php_database |
| php54w-pdo | |
| php54w-pgsql | php-pdo_pgsql, php_database |
| php54w-process | php-posix, php-sysvmsg, php-sysvsem, php-sysvshm |
| php54w-pspell | |
| php54w-recode | |
| php54w-snmp | |
| php54w-soap | |
| php54w-tidy | |
| php54w-xml | php-dom, php-domxml, php-wddx, php-xsl |
| php54w-xmlrpc | |
| php54w-zts |
[root@kallen ~]# yum install php54w-gd.x86_64 Loaded plugins: product-id, security, subscription-manager This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register. Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package php54w-gd.x86_64 0:5.4.41-1.w6 will be installed --> Processing Dependency: libt1.so.5()(64bit)for package: php54w-gd-5.4.41-1.w6.x86_64 --> Finished Dependency Resolution Error: Package: php54w-gd-5.4.41-1.w6.x86_64 (webtatic)Requires:libt1.so.5()(64bit)You could try using --skip-broken to work around the problemYou could try running: rpm -Va --nofiles --nodigest
解決的方法:
[root@kallen ~]# rpm -ivh t1lib-5.1.2-6.el6_2.1.x86_64.rpm warning: t1lib-5.1.2-6.el6_2.1.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY Preparing... ########################################### [100%]1:t1lib ########################################### [100%]2.PHP-5.5
[root@kallen ~]# yum remove php php-bcmath php-cli php-common php-devel php-fpm php-gd php-imap php-ldap php-mbstring php-mcrypt php-mysql php-odbc php-pdo php-pear php-pecl-igbinary php-xml php-xmlrpc [root@kallen ~]# yum install php55w php55w-bcmath php55w-cli php55w-common php55w-devel php55w-fpm php55w-gd php55w-imap php55w-ldap php55w-mbstring php55w-mcrypt php55w-mysql php55w-odbc php55w-pdo php55w-pear php55w-pecl-igbinary php55w-xml php55w-xmlrpc php55w-opcache php55w-intl php55w-pecl-memcache四、版本號測試
1.查看PHP版本號信息
(1) 查看版本號號
kallen@kallen:~$ php -v PHP 5.5.9-1ubuntu4.11 (cli) (built: Jul 2 2015 15:23:08) Copyright (c) 1997-2014 The PHP Group Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologieswith Zend OPcache v7.0.3, Copyright (c) 1999-2014, by Zend Technologies(2) 查看安裝信息
在Apache的document root文件夾下編輯測試頁面index.php。內容例如以下:
通過http://localhost:port/php/index.php訪問:
2.查看PHP已安裝模塊
kallen@kallen:~$ php -m [PHP Modules] bcmath bz2 calendar Core ctype date dba dom ereg exif fileinfo filter ftp gd gettext hash iconv json ldap libxml mbstring mhash mysql mysqli openssl pcntl pcre PDO pdo_mysql pdo_pgsql pgsql Phar posix readline Reflection session shmop SimpleXML soap sockets SPL standard sysvmsg sysvsem sysvshm tokenizer wddx xml xmlreader xmlwriter Zend OPcache zip zlib[Zend Modules] Zend OPcache3.MySQL連接測試
<?php$link=mysql_connect('localhost','root','*');if(!$link)echo "Connection Error!";elseecho "Connected Successfully!"mysql_close(); ?>
未完續待。
總結
以上是生活随笔為你收集整理的LNMP环境搭建——PHP篇的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: POJ-3268-最短路(dijkstr
- 下一篇: 根据浏览器内核判断是web/iOS/an