lnmp安装--php安装
版本:php5.6.4 x86_64
centos 6.6 x86_64
安装php之所以难,是因为要安装的扩展多,依赖关系复杂。
安装前的准备:
先看你想要安装哪些扩展。需要哪些包。下载地址:http://pan.baidu.com/s/1kTn7VQB
-rw-r--r--. root root Jun curl-7.19..tar.gz
-rw-r--r--. root root Jun freetype-2.3..tar.gz
-rw-r--r--. root root Nov gd-2.0..tar.gz
-rw-r--r--. root root Jun GD-2.44.tar.gz-rw-r--r--. root root Jun jpegsrc.v8d.tar.gz
-rw-r--r--. root root Jun libgd-2.1.-rc2.tar.gz
-rw-r--r--. root root Jun libmcrypt-2.5..tar.gz
-rw-r--r--. root root Jun libpng-1.4..tar.gz
-rw-r--r--. root root Jun mcrypt-2.6..tar.gz
-rw-r--r--. root root Jun mhash-0.9.9.9.tar.bz2-rw-r--r--. root root Dec ncurses-5.6.tar.gz
-rw-r--r--. root root May perl-5.18..tar.gz-rw-r--r--. root root Jun zlib-1.2..tar.gz
再看看配置项:
./configure --prefix=/usr/local/php --with-config-file-path=/etc --with-zlib --with-bz2 --with-freetype-dir --enable-mbstring --with-mysql=/usr/local/mysql/ --with-gd --with-libxml-dir --with-png-dir --with-jpeg-dir=/usr/local/jpeg --enable-sockets --enable-gd-native-ttf --with-curl=/usr/local/curl --enable-bcmath --with-mcrypt --enable-fpm --with-mysql --with-iconv --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd
可以看出我需要的功能有,gd库,mysql,mysqli,pdo,fpm,curl,mbstring。
可能新手会很困惑,php怎么和mysql结合,这里要说一下,php只需要安装上mysql的扩展(mysql,mysqli,pdo-mysql),php程序连接mysql的时候,会自动到对应host的端口连接mysql,只要mysql服务在监听就没有问题。
/etc/my.cnf配置
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links= [mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid [client]
socket=/var/lib/mysql/mysql.sock
将上面所列出的包,依次安装上。
然后再./configure php
yum install libxml2 libxml2-devel
yum install bzip2 bzip2-devel
找不到 gd.h。
gdlib-config --all
实际上找不到gd.h是因为没有安装下面两个包。
yum install libXpm
yum install libXpm-devel
安装完,配置gd库。
perl ./Makefile.PL
cd libgd-2.1.-rc2
./configure --with-xpm=/usr/lib
中间会显示gd支持的特性。
make
make install
cd GD-2.44
perl ./Makefile.PL
make&&make install
./configure --prefix=/usr/local/php --with-config-file-path=/etc --with-zlib --with-bz2 --with-freetype-dir --enable-mbstring --with-mysql=/usr/local/mysql/ --with-gd --with-libxml-dir --with-png-dir --with-jpeg-dir=/usr/local/jpeg --enable-sockets --enable-gd-native-ttf --with-curl=/usr/local/curl --enable-bcmath --with-mcrypt --enable-fpm --with-mysql --with-iconv --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd
make
make install
php
/usr/local/sbin/php-fpm -h
/usr/local/php/sbin/php-fpm -h
ls /usr/local/php/php/
ls /usr/local/php/
ls
cp php.ini-development /usr/local/php/php/php.ini
ls /usr/local/php/php/
find / -name php-fpm.conf.default
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
cp sapi/fpm/php-fpm /usr/local/bin/
php-fpm start
php-fpm
vim /usr/local/php/php/php.ini
至此全部安装完毕。
ls
./configure --help
./configure --help |grep mysqli
./configure --prefix=/usr/local/php --with-config-file-path=/etc --enable-fastcgi --enable-safe-mode --with-zlib --with-bz2 --with-freetype-dir --enable-mbstring --with-mysql=/usr/local/mysql/ --with-gd=/usr/local/gd2/ --with-libxml-dir --with-png-dir --with-jpeg-dir=/usr/local/jpeg --enable-sockets --enable-gd-native-ttf --with-curl=/usr/local/curl --enable-bcmath --with-mcrypt --enable-fpm --with-mysql --with-iconv --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd yum install libxml2 libxml2-devel
./configure --prefix=/usr/local/php --with-config-file-path=/etc --enable-fastcgi --enable-safe-mode --with-zlib --with-bz2 --with-freetype-dir --enable-mbstring --with-mysql=/usr/local/mysql/ --with-gd=/usr/local/gd2/ --with-libxml-dir --with-png-dir --with-jpeg-dir=/usr/local/jpeg --enable-sockets --enable-gd-native-ttf --with-curl=/usr/local/curl --enable-bcmath --with-mcrypt --enable-fpm --with-mysql --with-iconv --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd
yum install BZip2
yum list |grep bzip2
yum install bzip2 bzip2-devel
./configure --prefix=/usr/local/php --with-config-file-path=/etc --enable-fastcgi --enable-safe-mode --with-zlib --with-bz2 --with-freetype-dir --enable-mbstring --with-mysql=/usr/local/mysql/ --with-gd=/usr/local/gd2/ --with-libxml-dir --with-png-dir --with-jpeg-dir=/usr/local/jpeg --enable-sockets --enable-gd-native-ttf --with-curl=/usr/local/curl --enable-bcmath --with-mcrypt --enable-fpm --with-mysql --with-iconv --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd
ls /usr/local |grep gd
ls /usr/local/
./configure --prefix=/usr/local/php --with-config-file-path=/etc --enable-fastcgi --enable-safe-mode --with-zlib --with-bz2 --with-freetype-dir --enable-mbstring --with-mysql=/usr/local/mysql/ --with-gd=/usr/local/gd2/ --with-libxml-dir --with-png-dir --with-jpeg-dir=/usr/local/jpeg --enable-sockets --enable-gd-native-ttf --with-curl=/usr/local/curl --enable-bcmath --with-mcrypt --enable-fpm --with-mysql --with-iconv --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd
ls /usr/local
ls /usr/local/lib
find / -name gd.h
./configure --prefix=/usr/local/php --with-config-file-path=/etc --enable-fastcgi --enable-safe-mode --with-zlib --with-bz2 --with-freetype-dir --enable-mbstring --with-mysql=/usr/local/mysql/ --with-gd=/usr/local/ --with-libxml-dir --with-png-dir --with-jpeg-dir=/usr/local/jpeg --enable-sockets --enable-gd-native-ttf --with-curl=/usr/local/curl --enable-bcmath --with-mcrypt --enable-fpm --with-mysql --with-iconv --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd
./configure --prefix=/usr/local/php --with-config-file-path=/etc --with-zlib --with-bz2 --with-freetype-dir --enable-mbstring --with-mysql=/usr/local/mysql/ --with-gd=/usr/local/ --with-libxml-dir --with-png-dir --with-jpeg-dir=/usr/local/jpeg --enable-sockets --enable-gd-native-ttf --with-curl=/usr/local/curl --enable-bcmath --with-mcrypt --enable-fpm --with-mysql --with-iconv --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd
vim README.md
ls
vim INSTALL
make
ls /usr/local/
ls /usr/local/lib
find / |grep gd$
cd /usr/share/locale/gd/
ls
cd /root/Downloads/
ls
cd extended/
ls
cd GD-2.44
ls
vim README
find / |grep bin/gd
/usr/sbin/gdm
/usr/sbin/gdm --help
/usr/sbin/gdm --version
find / |grep bin/gd$
gd_info();
gd_info() ;
gd_info
gdlib-config
gdlib-config all
gdlib-config --all
gdbus
gdm
gdm --help
gdm-binary
gdm-binary --help
gdcmpgif
gdlib-config
gdlib-config --libs
gdlib-config --revision
gdlib-config --features
yum install libXpm
yum install libXpm-devel
gdlib-config --features
ls
./perl Makefile.PL
vim README
perl ./Makefile.PL
perl ./Makefile.PL -h
perl ./Makefile.PL
make
make install
gdlib-config
perl ./Makefile.PL --help
perl ./Makefile.PL -h
perl ./Makefile.PL ?
perl ./Makefile.PL --with-xpm=/usr/local/lib
vim README
cd ..
ls
cd libgd-2.1.-rc2
ls
./configure --with-xpm=/usr/lib
make
cd ..
ls
cd libgd-2.1.-rc2
make install
cd ..
cd GD-2.44
perl ./Makefile.PL
make&&make install
cd ..
cd php-5.6. ./configure --prefix=/usr/local/php --with-config-file-path=/etc --with-zlib --with-bz2 --with-freetype-dir --enable-mbstring --with-mysql=/usr/local/mysql/ --with-gd=/usr/local/gd2/ --with-libxml-dir --with-png-dir --with-jpeg-dir=/usr/local/jpeg --enable-sockets --enable-gd-native-ttf --with-curl=/usr/local/curl --enable-bcmath --with-mcrypt --enable-fpm --with-mysql --with-iconv --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd find / |grep gd.h
./configure --prefix=/usr/local/php --with-config-file-path=/etc --with-zlib --with-bz2 --with-freetype-dir --enable-mbstring --with-mysql=/usr/local/mysql/ --with-gd --with-libxml-dir --with-png-dir --with-jpeg-dir=/usr/local/jpeg --enable-sockets --enable-gd-native-ttf --with-curl=/usr/local/curl --enable-bcmath --with-mcrypt --enable-fpm --with-mysql --with-iconv --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd make
make install
php
/usr/local/sbin/php-fpm -h
/usr/local/php/sbin/php-fpm -h
ls /usr/local/php/php/
ls /usr/local/php/
ls
cp php.ini-development /usr/local/php/php/php.ini
ls /usr/local/php/php/
find / -name php-fpm.conf.default
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
cp sapi/fpm/php-fpm /usr/local/bin/
php-fpm start
php-fpm
vim /usr/local/php/php/php.ini
vim /usr/local/nginx/conf/nginx.conf
/usr/local/nginx/ -s stop
/usr/local/nginx/sbin/nginx -s stop
/usr/local/nginx/sbin/nginx
service mysqld start
php-fpm
cd /usr/local/nginx/html/
ls
vim index.php
/usr/local/mysql/bin/mysql -uroot -p
vim index.php
vim /usr/local/php/php/php.ini
/usr/local/nginx/sbin/nginx -s stop
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
find /usr/ -name php-fpm.conf
vim /usr/local/php/etc/php-fpm.conf
pkill php-fpm
/usr/local/bin/php-fpm
cat /etc/passwd |grep www
vim /usr/local/php/etc/php-fpm.conf
/usr/local/bin/php-fpm
pkill php-fpm
/usr/local/bin/php-fpm
cat /etc/passwd
groupadd nginx
useradd -r -g nginx nginx
vim /usr/local/php/etc/php-fpm.conf
/usr/local/bin/php-fpm
vim /usr/local/php/etc/php-fpm.conf
/usr/local/bin/php-fpm
/usr/local/nginx/sbin/nginx -s stop
/usr/local/nginx/sbin/nginx
ls
cd ..
ls -l
chmod -R ./html/
ps -ef |grep php
/usr/local/mysql/bin/mysql -hlocalhost -uroot -p
ls
vim html/index.php
/usr/local/mysql/bin/mysql -uroot -p -hlocalhost
history
安装中用过的所有命令:
可能发生的错误:
configure: error: Please reinstall the BZip2 distribution
yum install bzip2 bzip2-devel
yum install -y libmcrypt libmcrypt-devel
configure:error: *** libmcrypt was not found
为了的到mcrypt.so库文件,先后安装编译了mhash和libmcrypt, 但是到最后编译mcrypt时报错:
configure: error: *** libmcrypt was not found
[root@localhost] # export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
再次编译
http://www.linuxidc.com/Linux/2009-03/18739.htm
http://www.it165.net/os/html/201304/4868.html
安装gd的时候,会报这个错误 “usr/local/src/php-5.5.6/ext/gd/gd.c:57:22: error: X11/xpm.h: No such file or directory make: *** [ext/gd/gd.lo] Error 1”
yum install libXpm-dev libXpm
在配置gd2的时候多加一条 --with-xpm=/usr/lib
./configure 的时候 会发现
"Support for Xpm library : yes"这一项,说明配置成功。
php支持 mysqli,pdo-mysql
mysqlnd(专门为php写的),libmysqlclient(用c连接数据库用的,搞到php上来了)
http://php.net/manual/en/ref.pdo-mysql.php
nginx 发生permission deny
去看看php-fpm的用户配置,nginx的用户配置
当连接数据库的时候,我遇到这个问题了。后来发现,写127.0.0.1就可以连接,写localhost就不可以连接。mysql版本是 5.6.
create user 'root'@'localhost'的时候也有问题。总之搞不懂。
有人说和selinux有关。
http://blog.sina.com.cn/s/blog_a0d5a7f10101dzbc.html
lnmp环境的操作部分:
安装php+nginx:http://www.cnblogs.com/simpman/p/4151662.html
安装mysql:http://www.cnblogs.com/simpman/p/4192942.html
安装php:http://www.cnblogs.com/simpman/p/4196051.html
lnmp环境的理论部分:
FastCgi与PHP-fpm关系[转] 读完本文瞬间明朗了很多 : http://www.cnblogs.com/simpman/p/4151639.html
epoll和select区别:http://www.cnblogs.com/simpman/p/4150005.html
扩展下载包:http://pan.baidu.com/s/1kTn7VQB
pycurl版本低:http://www.fireinfo.cn/content-11-63668-1.html
lnmp安装--php安装的更多相关文章
- LNMP笔记:安装 Xcache 缓存扩展,降低服务器负载
LNMP笔记:安装 Xcache 缓存扩展,降低服务器负载 2014/11/27 教程笔记 4,743 14 WordPress 精品主机推荐:恒创主机 | 阿里云(本站目前所用云主机) 倡萌 ...
- lnmp环境里安装mssql及mssql的php扩展
小活中用到mssql,于是在自己lnmp环境中安装各mssql数据库 步骤如下: 源码编译安装 (1)下载freetds-stable-0.91源码:http://download.csdn.net/ ...
- lnmp环境一键安装
lnmp一键安装命令: wget -c http://soft.vpser.net/lnmp/lnmp1.5.tar.gz && tar zxf lnmp1.5.tar.gz & ...
- centos lamp/lnmp阶段复习 以后搬迁discuz论坛不需要重新安装,只需修改配置文件即可 安装wordpress 安装phpmyadmin 定时备份mysql两种方法 第二十五节课
centos lamp/lnmp阶段复习 以后搬迁discuz论坛不需要重新安装,只需修改配置文件即可 安装wordpress 安装phpmyadmin 定时备份mysql两种方法 第二十五节 ...
- LNMP源码安装脚本
LNMP安装脚本,脚本环境 #LNMP环境搭建centos6.8 2.6.32-696.28.1.el6.x86_64 nginx:1.12.2 mysql:5.6.36 PHP:5.5. ...
- LNMP+Zabbix的安装与部署
LNMP+Zabbix的安装与部署 一.Zabbix简介 1.zabbix是一个基于WEB界面的,并提供分布式系统监视以及网络监视功能的企业级的开源解决方案. zabbix能监视各种网络参数,保证服务 ...
- Bitnami LNMP集成包安装简单总结
前言发送图文消息时间点,访问量大,请求并发多,业务web机处理不过来,新增加了2台web机应对.搞过Linux软件安装的都知道,各种库的依赖会把人搞崩溃,尤其是服务器不能访问外网的情况下,会非常的蛋疼 ...
- linux lnmp环境下 安装apache教程
linux lnmp环境下 安装apache教程 源码安装 apr ,apr-util 安装apache要用<pre>wget http://mirrors.cnnic.cn/apache ...
- Centos7之LNMP环境编译安装
Centos7之LNMP环境编译安装 一.系统环境准备 注:安装时间过长,只做参考!!!1.系统信息 [root@localhost ~]# uname -r 3.10.0-957.el7.x86_6 ...
- 部署 LNMP(源码安装版本)shell脚本
#!/bin/bash # 一键部署 LNMP(源码安装版本) menu() { clear echo " ##############‐‐‐‐Menu‐‐‐‐##############& ...
随机推荐
- Cloudera集群中提交Spark任务出现java.lang.NoSuchMethodError: org.apache.hadoop.hbase.HTableDescriptor.addFamily错误解决
Cloudera及相关的组件版本 Cloudera: 5.7.0 Hbase: 1.20 Hadoop: 2.6.0 ZooKeeper: 3.4.5 就算是引用了相应的组件依赖,依然是报一样的错误! ...
- Wireshark抓包工具使用教程以及常用抓包规则
转载:http://fangxin.blog.51cto.com/1125131/735178 Wireshark是一个非常好用的抓包工具,当我们遇到一些和网络相关的问题时,可以通过这个工具进行分析, ...
- 琐碎-到底要不要SSH免密码设置
搭建了很多次hadoop2.2.0了,尝试过很多不同的启动方法.配置参数.位置,其中涉及到到底要不要配置SSH免密码登录的问题 先是搞清楚为什么需要SSH免密码登录 SSH免密码登录操作步骤: ... ...
- 实用JS大全
****************************************************************(一)常用元素,对象,事件,技巧 事件源对象 event.srcElem ...
- python(6)-执行shell命令
可以执行shell命令的相关模块和函数有: os.system os.spawn* os.popen* --废弃 popen2.* --废弃 commands.* ...
- Apache配置文件中的deny与allow小结
今天在公司配置Zend本地Apache环境的时候,发现在zend.conf中的权限控制中的几段句子,如下所示: 复制代码代码如下: <Location /server-status> ...
- Linux 命令 - kill: 向进程发送信号
kill 命令通常用来 “杀死”(终止)进程,它可以用来终止运行不正常的程序或者反过来拒绝终止的程序.kill 命令准确地说并不是 “杀死” 进程,而是给进程发送信号(signal). 和文件一样,进 ...
- 怎么改svn的登陆账号
svn 我想大家都很熟悉.用的也很多.可是上次遇到一个问题 ,就是用别人的svn下载的代码.选择了记住账号密码.结果提交的时候 还是用别人的不大好.结果就想改成自己的账号.第一次改 找了半天.今天给大 ...
- 学习Learn Python The Hard Way 前言中的一段话,可与君共勉
在你通过这本书学习编程时,我正在学习弹吉他.我每天至少训练 2 小时,至少花一个小时练习音阶.和声.和琶音,剩下的时间用来学习音乐理论和歌曲演奏以及训练听力等.有时我一天会花 8 个小时来练习,因为我 ...
- st_mode 的位定义
先前所描述的st_mode 则定义了下列数种情况: S_IFMT 0170000 文件类型的位遮罩 S_IFSOCK 0140000 scoket S_IFLNK 0120000 符号连接 S_IFR ...