Php安装

一、安装准备

1、Php依赖包

[root@Lnmp tools]# yum install -y zlib libxml libjpeg freetype libpng gd curl libiconv zlib-devel libxml2-devel libjpeg-devel freetype-devel libpng-devel gd-devel curl-devel

[root@Lnmp tools]# rpm -qa zlib libxml libjpeg freetype libpng gd curl libiconv zlib-devel libxml2-devel libjpeg-devel freetype-devel libpng-devel gd-devel curl-devel  #检查

需要安装一个字符集转换库

[root@Lnmp tools]# tar zxf libiconv-1.14.tar.gz

[root@Lnmp tools]# cd libiconv-1.14

[root@Lnmp libiconv-1.14]# ./configure --prefix=/usr/local/libiconv

[root@Lnmp libiconv-1.14]# make

[root@Lnmp libiconv-1.14]# make install

另外需要安装一个加密的库

[root@Lnmp tools]# wget http://downloads.sourceforge.net/mcrypt/libmcrypt-2.5.8.tar.gz?modtime=1171868460&big_mirror=0

[root@Lnmp tools]# tar zxf libmcrypt-2.5.8.tar.gz

[root@Lnmp tools]# cd libmcrypt-2.5.8

[root@Lnmp libmcrypt-2.5.8]# ./configure

[root@Lnmp libmcrypt-2.5.8]# make

[root@Lnmp libmcrypt-2.5.8]# make install

[root@Lnmp libmcrypt-2.5.8]# sleep 2

[root@Lnmp libmcrypt-2.5.8]# ./configure --enable-ltdl-install

[root@Lnmp libmcrypt-2.5.8]# make

[root@Lnmp libmcrypt-2.5.8]# make install

#不安装也没有什么问题

安装mhash

[root@Lnmp tools]# wget "http://downloads.sourceforge.net/mhash/mhash-0.9.9.9.tar.gz?modtime=1175740843&big_mirror=0"

[root@Lnmp tools]# tar zxf mhash-0.9.9.9.tar.gz

[root@Lnmp tools]# cd mhash-0.9.9.9

[root@Lnmp mhash-0.9.9.9]# ./configure

[root@Lnmp mhash-0.9.9.9]# make

[root@Lnmp mhash-0.9.9.9]# make install

[root@Lnmp mhash-0.9.9.9]# sleep 2

[root@Lnmp tools]# ln -s /usr/local/lib64/libmcrypt.la /usr/lib64/libmcrypt.la
[root@Lnmp tools]# ln -s /usr/local/lib64/libmcrypt.so /usr/lib64/libmcrypt.so
[root@Lnmp tools]# ln -s /usr/local/lib64/libmcrypt.so.4 /usr/lib64/libmcrypt.so.4
[root@Lnmp tools]# ln -s /usr/local/lib64/libmcrypt.so.4.4.8 /usr/lib64/libmcrypt.so.4.4.8
[root@Lnmp tools]# ln -s /usr/local/lib64/libmhash.a /usr/lib64/libmash.a
[root@Lnmp tools]# ln -s /usr/local/lib64/libmhash.la /usr/lib64/libmash.la
[root@Lnmp tools]# ln -s /usr/local/lib64/libmhash.so /usr/lib64/libmash.so
[root@Lnmp tools]# ln -s /usr/local/lib64/libmhash.so.2 /usr/lib64/libmash.so.2
[root@Lnmp tools]# ln -s /usr/local/lib64/libmhash.so.2.0.1 /usr/lib64/libmash.so.2.0.1
[root@Lnmp tools]# ln -s /usr/local/lib64/libmcrypt-config /usr/bin/libmcrypt-config

[root@Lnmp tools]# wget "http://downloads.sourceforge.net/mcrypt/mcrypt-2.6.8.tar.gz?modtime=1194463373&big_mirror=0"

[root@Lnmp tools]# tar zxf mcrypt-2.6.8.tar.gz

[root@Lnmp tools]# cd mcrypt-2.6.8

[root@Lnmp mcrypt-2.6.8]# /sbin/ldconfig

[root@Lnmp mcrypt-2.6.8]# ./configure LD_LIBRARY_PATH=/usr/local/lib

[root@Lnmp mcrypt-2.6.8]# make

[root@Lnmp mcrypt-2.6.8]# make install

[root@Lnmp mcrypt-2.6.8]# cd ../

[root@Lnmp tools]# sleep 2

二、安装PHP

[root@Lnmp tools]# tar xf php-5.3.27.tar.gz

[root@Lnmp tools]# cd php-5.3.27

[root@Lnmp php-5.3.27]# yum install libxslt* -y

[root@Lnmp php-5.3.27]#  ./configure \--prefix=/application/php5.3.27 --with-mysql=/application/mysql --with-iconv-dir=/usr/local/libiconv --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath -enable-safe-mode --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --with-curlwrappers --enable-mbregex --enable-fpm --enable-mbstring --with-mcrypt --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip enable-soap --enable-short-tags --enable-zend-multibyte --enable-static --with-xsl --with-fpm-user=nginx --with-fpm-group=nginx --enable-ftp

出现Thank you for using PHP.说明编译成功

[root@Lnmp php-5.3.27]# make

#如果报下面的错误是因为libltdl没有编译安装

/usr/bin/ld: cannot find -lltdl

解决方法:

#cd libmcrypt-2.5.8/

#cd libltdl/

#./configure --enable-ltdl-install

#make && make install

[root@Lnmp php-5.3.27]# make install

[root@Lnmp php-5.3.27]# ln -s /application/php5.3.27/ /application/php

[root@Lnmp php-5.3.27]# ll /application/php/

三、配置PHP

[root@Lnmp php-5.3.27]# cp php.ini-production /application/php/lib/php.ini

[root@Lnmp php-5.3.27]# cd /application/php/etc/

[root@Lnmp etc]# cp php-fpm.conf.default php-fpm.conf

[root@Lnmp etc]# vim php-fpm.conf

25 pid = /app/logs/php-fpm.pid

32 error_log = /app/logs/php-fpm.log

50 log_level = error

93 rlimit_files = 32768

108  events.mechanism = epoll

162 listen.owner = nginx

163 listen.group = nginx

217 pm.max_children = 1024

222 pm.start_servers = 16

227 pm.min_spare_servers = 5

232 pm.max_spare_servers = 20

237 pm.process_idle_timeout = 15s;

243 pm.max_requests = 2048

423 slowlog = /app/logs/$pool.log.slow

429 request_slowlog_timeout = 10

506 php_admin_value[sendmail_path] = /usr/sbin/sendmail -t -i -f www@my.domain.com

[root@Lnmp etc]# mkdir -p /app/logs  #创建日志目录

[root@Lnmp etc]# /application/php/sbin/php-fpm -t  #检查语法

[root@Lnmp etc]# /application/php/sbin/php-fpm  #启动服务

PHP安装完毕

将所有服务启动放在/etc/rc.local下(开机自启动)

[root@Lnmp etc]# vim /etc/rc.local

/etc/init.d/mysqld start
/application/php/sbin/php-fpm
/application/nginx/sbin/nginx

四、PHP整合Nginx

在做LNMP之前配置过nginx

在这里配置一下Nginx

[root@Lnmp conf]# cd /application/nginx/conf/

[root@Lnmp conf]# vim nginx.conf

1 error_log logs/error.log error;
2 worker_processes 2;
3 events {
4 worker_connections 1024;
5 }
6 http {
7 include mime.types;
8 default_type application/octet-stream;
9 sendfile on;
10 keepalive_timeout 65;
11 log_format main '$remote_addr - $remote_user [$time_local] "$request"'
12 '$status $body_bytes_sent "$http_referer"'
13 '"$http_user_agent" "$http_x_forwarded_for"';
14 include extra/www.conf;
15 include extra/bbs.conf;
16 include extra/blog.conf;
17 }

[root@Lnmp conf]# mkdir extra

[root@Lnmp conf]# cd extra/

[root@Lnmp conf]# touch bbs.conf blog.conf www.conf

[root@Lnmp extra]# vim bbs.conf

server{
listen 80;
server_name bbs.zixia.com;
root html/bbs;
index index.php index.html index.htm;
access_log logs/www_access.log;
location ~ .*\.(php|php5)?$
{
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi.conf;
}
}

[root@Lnmp extra]# vim blog.conf

server {
listen 80;
server_name blog.zixia.com;
root html/blog;
index index.html index.htm;
}

[root@Lnmp extra]# vim www.conf

server {
listen 80;
server_name www.zixia.com;
root html/www;
index index.html index.htm;
access_log logs/www_access.log main;

}

[root@Lnmp extra]# cd ../../html/bbs/

[root@Lnmp bbs]# vim index.php

<?php
phpinfo();
?>

修改windows下C:\Windows\System32\drivers\etc\hosts文件

将地址与ip写进hosts文件

例:

浏览器访问bbs.zixia.com

到此为止表示PHP安装成功。

测试是否可以连接Mysql

[root@Lnmp bbs]# vim zixia_mysql.php

<?php
$link_id=mysql_connect('localhost','root','123456') or mysql_error();

if($link_id){
echo "mysql successful by zixia !\n";
}else{
echo "mysql_error()";
}
?>

到此为止LNMP安装完毕。

Lnmp架构部署动态网站环境.2019-7-3-1.3的更多相关文章

  1. 《Linux就该这么学》培训笔记_ch20使用LNMP架构部署动态网站环境

    <Linux就该这么学>培训笔记_ch20使用LNMP架构部署动态网站环境 文章最后会post上书本的笔记照片. 文章主要内容: 源码包程序 LNMP动态网站架构 配置Mysql服务 配置 ...

  2. 第20章 使用LNMP架构部署动态网站环境

    章节概述: 本章节将从Linux系统的软件安装方式讲起,带领读者分辨RPM软件包与源码安装的区别.并能够理解它们的优缺点. Nginx是一款相当优秀的用于部署动态网站的服务程序,Nginx具有不错的稳 ...

  3. Lnmp架构部署动态网站环境.2019-7-2-1.1

    一.Mysql简介 Mysql数据库: 1.社区版 2.商业版 3.cluster集群 Mysql安装方式 1.编译安装 2.yum/rpm 3.二进制包,直接解压,无需编译 二.Mysql安装部署 ...

  4. 《linux就该这么学》课堂笔记20 LNMP架构部署动态网站环境

    源码包安装程序 使用源码包来安装服务程序具有两个优势. 源码包的可移植性非常好,几乎可以在任何Linux系统中安装使用,而RPM软件包是针对特定系统和架构编写的指令集,必须严格地符合执行环境才能顺利安 ...

  5. Lnmp架构部署动态网站环境.2019-7-3-1.4

    安装wiki开源产品 一.创建数据库 [root@Lnmp bbs]# mysql -uroot -p123456 mysql> create database wiki; #创建wiki数据库 ...

  6. Lnmp架构部署动态网站环境.2019-7-3-1.2

    Nginx安装 一.安装准备 Pcre(Perl Compatible Regular Expressions,兼容正则表达式)安装pcre库是为了使Nginx支持HTTP Rewrite模块. 安装 ...

  7. 使用LNMP架构部署动态网站环境(源代码安装)

  8. nginx详解反向代理、负载均衡、LNMP架构上线动态网站(week4_day1_part1)-技术流ken

    nginx介绍 Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx,它的发音为“engine X”,是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/SMTP 代理 ...

  9. 用lnmp架构部署wordpress网站详细步骤

    用lnmp架构部署wordpress网站 ①.下载和上传网站代码 用winscp或者xftp, 或者xshell下执行rz命令进行上传网站的包文件. ②.解压程序代码,并将程序代码保存到站点目录,并进 ...

随机推荐

  1. 应用DEV第三方界面控件制作批量添加水印程序

    本次应用DevExpress和C#语言制作了一个批量添加水印的程序,看界面效果图: 界面中既可以进行文字水印添加,也可以图片水印添加,同时还可以对水印的位置进行设置,比较实用! 文字水印的具体添加情况 ...

  2. OpenCV:图像的开运算与闭运算

    导包: import numpy as np import cv2 import matplotlib.pyplot as plt def show(image): plt.imshow(image) ...

  3. 初级模拟电路:3-2 BJT的工作原理

    回到目录 和前面介绍二极管的PN结的工作原理一样,BJT的量子级工作机制也非常复杂,一般教科书上为了帮助学习者能快速理解,也都是用一种简化模型的方法来介绍BJT的工作机理,一般只需大致了解即可.只要记 ...

  4. The Preliminary Contest for ICPC Asia Shenyang 2019

    传送门 B. Dudu's maze 题意: 是什么鬼东西???我读题可以读半小时QAQ 给出一张无向图,一个人在里面收集糖果,每个点都有一个糖果,特殊点除外.当他第一次进入特殊点时,会随机往一条边走 ...

  5. 201871010116-祁英红《面向对象程序设计(java)》第十三周学习总结

    博文正文开头格式:(2分) 项目 内容 <面向对象程序设计(java)> https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://ww ...

  6. oracle xmltype + blob + clob

    oracle varchar2最大存储长度为4000,所以当字段长度超限时可尝试存储为blob或xmltype格式 xmltype --1.创建xml表 Create TABLE testxml( i ...

  7. [C5W2] Sequence Models - Natural Language Processing and Word Embeddings

    第二周 自然语言处理与词嵌入(Natural Language Processing and Word Embeddings) 词汇表征(Word Representation) 上周我们学习了 RN ...

  8. 【Oracle】SQL的各种连接join

    SQL JOIN 子句用于把来自两个或多个表的行结合起来,基于这些表之间的共同字段. 最常见的 JOIN 类型: INNER JOIN(简单的 JOIN).LEFT JOIN.RIGHT JOIN.F ...

  9. matlab练习程序(图像投影到点云)

    最近接触点云比较多,如果把图像投影到点云应该挺有意思. 首先需要载入图像,然后做个球或其他什么形状的点云,这里可以参考球坐标公式. 最后通过pcshow将像素输出到点云上即可. 原图: 投影后的点云: ...

  10. JavaScript:ES6的新特性

    1.关键字 const:修饰常量.ES6之前只有变量的声明字段var,ES6开始引入常量关键字,被修饰的变量无法被修改. <script type="text/javascript&q ...