php fastcgi怎么用,php编译安装及fastcgi使用

LAMP的PHP

这章我们讲PHP,和fastcgi

下面链接是LAMP的AM,apache和mariadb

首先准备几个安装包

libmcrypt-2.5.8.tar.gz

wget http://down1.chinaunix.net/distfiles/libmcrypt-2.5.7.tar.gz

php-5.6.29.tar.gz

1、解决依赖关系

如果想让编译的php支持mcrypt扩展,需安装libmcrypt libmcrypt-devel 或者编译安装

#tar -zxvf libmcrypt-2.5.7.tar.gz

#cd libmcrypt-2.5.7

#./configure

#make && make install

2、编译安装php-5.6.29

#tar zxvf php-5.6.29.tar.bz2

#cd php-5.6.29./configure\

--prefix=/usr/local/php\

##php路径

--with-mysql=/usr/local/mysql\

##mysql路径

--with-openssl=/usr/local/openssl1u\

##openssl路径

--with-mysqli=/usr/local/mysql/bin/mysql_config \

##mysql配置文档

--enable-mbstring --with-freetype-dir \

--with-jpeg-dir --with-png-dir --with-zlib \

##支持图文件

--with-libxml-dir=/usr\

##支持xml库

--enable-xml  --enable-sockets \

##支持xml、套接字

--with-apxs2=/usr/local/httpd2.4/bin/apxs \

##apxs

--with-mcrypt  --with-config-file-path=/etc \

--with-config-file-scan-dir=/etc/php.d \

--with-bz2  --enable-maintainer-zts

./configure\

--prefix=/usr/local/php\

--with-mysql=/usr/local/mysql\

--with-openssl=/usr/local/openssl1u\

--with-mysqli=/usr/local/mysql/bin/mysql_config \

--enable-mbstring --with-freetype-dir \

--with-jpeg-dir --with-png-dir --with-zlib \

--with-libxml-dir=/usr\

--enable-xml  --enable-sockets \

--with-apxs2=/usr/local/httpd2.4/bin/apxs \

--with-mcrypt  --with-config-file-path=/etc \

--with-config-file-scan-dir=/etc/php.d \

--with-bz2  --enable-maintainer-zts

# make  && make install

为php提供配置文件:

# cp php.ini-production /etc/php.ini

3、 编辑apache配置文件httpd.conf,以apache支持php

# vim /etc/httpd/httpd.conf

1、添加如下二行

AddType application/x-httpd-php  .php

AddType application/x-httpd-php-source  .phps

bbb4b448d8171020ee7300701b102b89.png

2、定位至DirectoryIndex index.html

修改为:

DirectoryIndex  index.php  index.html

3、添加模块

LoadModule php5_module modules/libphp5.so

eef2312a1f407c57eb2529abbfe35059.png

c892a66900c4250c429cbcc5c082d55d.png

4、测试是否正常

435b67a013b674772dd047c34885d517.png

在数据添加权限

mysql -u账号 -p密码GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'rexchow' WITH GRANT OPTION;

##授权root账号访问%=(本地、IP、hostname)

FLUSH PRIVILEGES;

更新权限

#cd /usr/local/apache/htdocs

#mv index.html index.php

#vim index.php     清除内容

$conn=mysql_connect('192.168.230.202','root','rexchow');

if ($conn)

echo "Connect Success...";

else

echo "Connect Failure...";

phpinfo();

?>

打开浏览器测试、走到这步,已经完成lamp的编译安装任务

那么我们开始新的路线,建一个网站,首先下个模板

b60972b6928120a76d5fd4dd8f33cd09.gif

我们在体验个小游戏:

1、建立wordpress

2、给服务器做压力测试

##下周wordpresswget https://cn.wordpress.org/wordpress-4.7.1-zh_CN.zip

##下载

unzip wordpress-4.7.1-zh_CN.zip

##解压

mv wordpress /usr/local/httpd2.4/htdocs

##将wordprss复制到apache服务器下的根目录

先安装个mysql管理器

yum install phpmyadmin -y

$ mysql -u root -p

Enter password:

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 5340 to server version: 3.23.54

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> CREATE DATABASE wordpress;

Query OK, 1 row affected (0.00 sec)

mysql> GRANT ALL PRIVILEGES ON wordpress.* TO "wp"@"localhost" IDENTIFIED BY "wp";

Query OK, 0 rows affected (0.00 sec)

mysql> FLUSH PRIVILEGES;

Query OK, 0 rows affected (0.01 sec)

mysql> EXIT

Bye

$

##创建wordpress数据,及给予改wp授权该数据管理权限。

从网上抄来的一段精华内容:

用户管理

mysql>use mysql;

查看

mysql> select host,user,password from user ;

创建

mysql> create user  zx_root  IDENTIFIED by 'xxxxx';   //identified by 会将纯文本密码加密作为散列值存储

修改

mysql>rename   user  feng  to   newuser;//mysql 5之后可以使用,之前需要使用update 更新user表

删除

mysql>drop user newuser;   //mysql5之前删除用户时必须先使用revoke 删除用户权限,然后删除用户,mysql5之后drop 命令可以删除用户的同时删除用户的相关权限

更改密码

mysql> set password for zx_root =password('xxxxxx');

mysql> update  mysql.user  set  password=password('xxxx')  where user='otheruser'

查看用户权限

mysql> show grants for zx_root;

赋予权限

mysql> grant selecton dmc_db.*  to zx_root;

回收权限

mysql> revoke  select on dmc_db.*  from  zx_root;  //如果权限不存在会报错

上面的命令也可使用多个权限同时赋予和回收,权限之间使用逗号分隔

mysql> grant select,update,delete  ,inserton dmc_db.*  to zx_root;

如果想立即看到结果使用

flush  privileges ;

命令更新

设置权限时必须给出一下信息

1,要授予的权限

2,被授予访问权限的数据库或表

3,用户名

grant和revoke可以在几个层次上控制访问权限

1,整个服务器,使用 grant ALL  和revoke  ALL

2,整个数据库,使用on  database.*

3,特点表,使用on  database.table

4,特定的列

5,特定的存储过程

user表中host列的值的意义

%              匹配所有主机

localhost    localhost不会被解析成IP地址,直接通过UNIXsocket连接

127.0.0.1      会通过TCP/IP协议连接,并且只能在本机访问;

::1                 ::1就是兼容支持ipv6的,表示同ipv4的127.0.0.1

即有安装提示:

按照提示附带index.php,验证wordpress账号登录是否正常<?php

$conn=mysql_connect('127.0.0.1','wp','wp');

if ($conn)

echo "Connect Success...";

else

echo "Connect Failure...";

?>

我的localhost 被锁了,原因还没有查出来。则用127.0.0.1代替

安装wordpress的提示页,需要你把配置文档复制到wordpress目录下的wp-config.php文件内

c3521741d72a53b87d563a430d479384.png

邮箱需要填上哦6126b84f9a9a6f31b302af7c076d0c50.gif

登录进去,直接点击发布,咱们实用性网页发布完成。

94d773c833057de899b232fe2a1c3cf9.png

854bb8c5ed2a3cb7e969f44983cec86c.gif

来来,开始ab进行压力测试

测试机器,用的192.168.230.204

##命令使用详细说明

我们现在只用下面的命令

输入命令ab -n 100 -c 10 http://test.com/

其中-n表示请求数,-c表示并发数fb6fffdf4592939ede8aa3e84d5698fc.png

响应非常快,原因是我们用的压力太小了

ee9b9f1f0b521c5432dd0b5bc2601acc.png

10000个请求 999个并发,

吞吐率2784 用户平均请求等待时间 355

服务器平均请求处理时间 0.359ms

咱们进行下一个故事,fastcgi模块

把服务器速度加速优化!~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值