如何查询自己在简书 仅自己可见的lD

本文由秀依林枫提供友情赞助,首发于烂泥行天下。 LNMP环境的搭建中,现在只有php没有源码安装过。这篇文章就把这个介绍下。 注意本篇文章使用的centos 6.5 64bit。 登陆centos下载php5.6的安装包。php的软件包可以去国内的souhu镜像站点去下载。 wget /php/php-5.6.2.tar.gz
在安装之前,我们需要安装php5.6编译时所依赖的软件包。如下: yum -y install gcc gcc-c++ libxml2 libxml2-devel
以上软件包安装完毕后,我们现在来解压刚刚下载的php5.6源码包。使用如下命令: tar -xf php-5.6.2.tar.gz
进入php5.6的解压目录,现在开始配置php5.6,使用如下命令: cd php-5.6.2 ./configure --enable-fpm --enable-mbstring --with-mysql=/usr/local/mysql
如果没有错误的情况下,配置完毕后。系统会出现如下的提示信息:
注意上述命令中--enable-fpm的作用是开启php的fastcgi功能即开启php-fpm功能,--with-mysql=/usr/local/mysql是启用php支持mysql的功能,/usr/local/mysql是mysql数据库的安装路径。 --enable-mbstring表示启用mbstring模块mbstring模块的主要作用在于检测和转换编码,提供对应的多字节操作的字符串函数。目前php内部的编码只支持ISO-8859-*、EUC-JP、UTF-8,其他的编码的语言是没办法在php程序上正确显示的,所以我们要启用mbstring模块。 同时我们也只是简单的开启和扩展php的一部分功能,其他需要的功能,请自行添加。 配置完毕后,我们现在来编译php,使用make命令,如下: make
php编译的时间比较长,根据机器的性能不同需要等待10-20分钟左右。编译完毕后的截图,如下:
编译完毕后,我们现在开始安装php,使用如下命令: make install
安装完毕后,我们可以通过php –v命令查看是否安装成功。如下: php –v
通过这样安装完毕后,你会发现在/usr/local/lib目录下没有php.ini文件。在这我们就先复制php安装文件提供的模版,如下: cp php.ini-production /usr/local/lib/php.ini
注意php.ini文件一般在/usr/local/lib/和/etc目录下。有关php安装完毕后,没有php.ini文件的,我们再另外一篇文章再介绍。 不要以为到这php的安装就完毕了,LNMP环境中的nginx是不支持php的,需要通过fastcgi来处理有关php的请求。而php需要php-fpm这个组件来支持。 在php5.3.3以前的版本php-fpm是以一个补丁包的形式存在的,而php5.3.3以后的php-fpm只需要在安装php-fpm开启这个功能即可。这个也就是前边,我们再配置php使用到的那个命令--enable-fpm。 php-fpm功能开启后,我们还需要配置php-fpm。其实php-fpm的配置文件在安装php时,已经为我们提供了一个配置文件的模版。该模版为/usr/local/etc/php-fpm.conf.default,如下: more /usr/local/etc/php-fpm.conf.default
我们现在只需要复制一份该文件,并重命名为php-fpm.conf,如下: cp /usr/local/etc/php-fpm.conf.default /usr/local/etc/php-fpm.conf
为了让php-fpm已服务的形式启动。我们需要复制php安装目录下/sapi/fpm/init.d.php-fpm文件。如下: cp ./sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
通过上图,我们也可以很清楚的看到php-fpm文件目前没有执行权限。赋予php-fpm执行权限,并启动php-fpm,如下: chmod a+x /etc/init.d/php-fpm /etc/init.d/php-fpm start netstat -tunlp |grep 9000
通过上图,我们可以很明显的看到php-fpm已经正常启动。 注意php-fpm默认监听的是9000端口。 现在再来配置nginx,使其支持php,如下: location ~ /.php$ {
fastcgi_pass 127.0.0.1:9000; fastcgi_index index. fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_ include fastcgi_ }
然后在nginx的网站根目录下新建index.php文件内容如下: vi /usr/local/nginx/html/index.php &?php phpinfo(); ?&
现在来启动nginx,如下: /usr/local/nginx/sbin/nginx netstat -tunlp |grep 80
nginx启动完毕后,现在来访问网站,如下:
通过上图,我们可以很明显的看到。php目前已经安装成功,并且也成功的支持mysql数据库。同时也与nginx集成完毕。 至此。我们的php5.6的安装到此结束。
最新教程周点击榜
微信扫一扫君,已阅读到文档的结尾了呢~~
php实现脚本传值
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
在Linux中直接用PHP命令来执行PHP文件
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口查看:3706|回复:2
以前是吧nginx,sphinx,php-fpm(php)安装在一起,我现在想把nginx与sphinx放在一起服务器A,php-fpm放在服务器B,我想问,我的web程序该放在哪里?是放在A还是B?
现有数据单表600万!:)1
优秀技术经理
当然是放nginx里面了啊,各部件是干什么的,楼主还没搞清楚,哎,基础太薄弱了。
引用:原帖由 gm100861 于
11:04 发表
当然是放nginx里面了啊,各部件是干什么的,楼主还没搞清楚,哎,基础太薄弱了。 非常感谢兄弟!小妹求助:请问在linux下更改PHP文件的目录后,怎么让APACHE找到新的php执行档位置
windows下重新指定php5apache2_2.dll的新位置就ok了
但在linux下换成了一个编译时候生成的apache libphp5.so而且放在apache的目录中。php5apache2_2.dll是放在php自己的目录中的
这样一来,linux下肯定是通过libphp5.so识别php在哪的。那我换了php的目录之后。不重新编译php的情况下还有办法让apache找到新的位置吗
我看了下libphp5.so不是纯文本格式。
妹子就是不同反响
引用来自“Solowave”的答案引用来自“szf”的答案引用来自“Solowave”的答案引用来自“szf”的答案 libphp5.so就是实现php文件处理的完整功能模块(由apache加载运行)
加载位置要参考httpd.conf/apache2.conf中的loadmodule指令
加载方法要参考apache配置文件的&IfModule mod_php5.c&段
要特别留意的是php.ini文件放哪才生效,否则其它的php模块(mysql, gd, xml之类)就加载不了了。
我明白啊。但是apache(或者可能是libphp5.so)如何去确定php的其他模块的位置呢。
php.ini里有指定么?
在上面 @eechen 已经回答你的问题了
我补充一点点:
apache -1-& apache_php的so -2-& 其它php扩展的so
1: apache的配置文件指定
2: php.so使用的配置文件指定(比如编译时)
再强调一次,不是php本身的开发者,又或者有特殊要求(发行版满足不了的)或者觉得其它打包者水平不行,建议还是用发行版维护的包,这样可以省下很多精力放在业务代码上面。
我不是php的开发者,我使用php来写
领导最近要我吧lnmp做成和windows下绿色软件一样的东西。所以必须要用到这个。
这个好办,安装脚本都做好了:
http://www.apachefriends.org/zh_cn/xampp-linux.html
类似套件的其它牌子也有,要看你会不会找了。
重新编译吧,linux就是用来折腾的
引用来自“szf”的答案引用来自“Solowave”的答案引用来自“szf”的答案 libphp5.so就是实现php文件处理的完整功能模块(由apache加载运行)
加载位置要参考httpd.conf/apache2.conf中的loadmodule指令
加载方法要参考apache配置文件的&IfModule mod_php5.c&段
要特别留意的是php.ini文件放哪才生效,否则其它的php模块(mysql, gd, xml之类)就加载不了了。
我明白啊。但是apache(或者可能是libphp5.so)如何去确定php的其他模块的位置呢。
php.ini里有指定么?
在上面 @eechen 已经回答你的问题了
我补充一点点:
apache -1-& apache_php的so -2-& 其它php扩展的so
1: apache的配置文件指定
2: php.so使用的配置文件指定(比如编译时)
再强调一次,不是php本身的开发者,又或者有特殊要求(发行版满足不了的)或者觉得其它打包者水平不行,建议还是用发行版维护的包,这样可以省下很多精力放在业务代码上面。
我不是php的开发者,我使用php来写
领导最近要我吧lnmp做成和windows下绿色软件一样的东西。所以必须要用到这个。
引用来自“Solowave”的答案引用来自“szf”的答案 libphp5.so就是实现php文件处理的完整功能模块(由apache加载运行)
加载位置要参考httpd.conf/apache2.conf中的loadmodule指令
加载方法要参考apache配置文件的&IfModule mod_php5.c&段
要特别留意的是php.ini文件放哪才生效,否则其它的php模块(mysql, gd, xml之类)就加载不了了。
我明白啊。但是apache(或者可能是libphp5.so)如何去确定php的其他模块的位置呢。
php.ini里有指定么?
在上面 @eechen 已经回答你的问题了
我补充一点点:
apache -1-& apache_php的so -2-& 其它php扩展的so
1: apache的配置文件指定
2: php.so使用的配置文件指定(比如编译时)
再强调一次,不是php本身的开发者,又或者有特殊要求(发行版满足不了的)或者觉得其它打包者水平不行,建议还是用发行版维护的包,这样可以省下很多精力放在业务代码上面。
引用来自“szf”的答案 libphp5.so就是实现php文件处理的完整功能模块(由apache加载运行)
加载位置要参考httpd.conf/apache2.conf中的loadmodule指令
加载方法要参考apache配置文件的&IfModule mod_php5.c&段
要特别留意的是php.ini文件放哪才生效,否则其它的php模块(mysql, gd, xml之类)就加载不了了。
我明白啊。但是apache(或者可能是libphp5.so)如何去确定php的其他模块的位置呢。
php.ini里有指定么?
引用来自“无巢禅师”的答案已投诉,如欲撤诉请上传高清无码免冠彩色正面照,或今晚一人到香格里大酒店888号总统房,由老衲亲自帮你验身并做个测评~o(///▽///)q
在编译PHP生成模块libphp5.so时就已经定义了Configuration File (php.ini) Path,
在phpinfo()页面可以看到这个信息,这里假设是/opt/php/lib.
你可以尝试把一份新的php.ini做一个软链接到/opt/php/lib/,让libphp5.so加载这个配置,并且把libphp5.so默认的一些路径在php.ini里重新定义为你现在的路径,这些设置比如extension_dir,include_path.
libphp5.so就是实现php文件处理的完整功能模块(由apache加载运行)
加载位置要参考httpd.conf/apache2.conf中的loadmodule指令
加载方法要参考apache配置文件的&IfModule mod_php5.c&段
要特别留意的是php.ini文件放哪才生效,否则其它的php模块(mysql, gd, xml之类)就加载不了了。
--- 共有 1 条评论 ---
如果这些没搞明白,还是不要折腾自己编译了,老实地用发行版的包管理吧,换个发行版都比折腾这个容易说得明白。
已投诉,如欲撤诉请上传高清无码免冠彩色正面照,或今晚一人到香格里大酒店888号总统房,由老衲亲自帮你验身并做个测评~

我要回帖

更多关于 简书如何投稿 的文章

 

随机推荐