MySQL + PHP+Nginx相连接

一、PHP安装

1、安装php-fpm

sudo apt install php5-fpm -y 

2、配置php-fpm

切换到/etc/php5/fpm/pool.d目录下,并编辑www.conf

​cd /etc/php5/fpm/pool.d

gedit www.conf

listen = /var/run/php5-fpm.sock

改为listen = 127.0.0.1:9000

3、启动php-fpm

  /etc/init.d/php5-fpm restart

  启动后查看php监听的端口号

  netstat -antp|grep php

  可知端口号正是我们上一步设置的9000这个端口号

 

 4、至此,php平台安装及配置完成

二、Nginx配置

1、创建一个server,并让该服务监听8899端口

配置完记得重启nginx

/home/ubuntu/nginx/sbin/nginx -s reload

重启后,打开浏览器确认配置生效

2、在8899该服务下添加php的相关配置

请注意该配置到底应该放在哪里

重新加载nginx配置:

/home/ubuntu/nginx/sbin/nginx -s reload
location ~ .*\.php?$ {
		try_files $uri = 404;
		root		html;
		index 		index.php index.html index.htm;
		fastcgi_pass   127.0.0.1:9000;
		fastcgi_index  index.php;
		include        fastcgi_params;
}

3、访问网页

浏览器中打开http://127.0.0.1:8899/index.php会发现404错误,这是因为我们还没有添加index.php

这个文件,因此切换到上页配置的root所对应的目录(在哪里),创建index.php文件,并在

index.php中写入

<h1>

    <span> hello, this is test page </span>

</h1>

其次,再创建一个info.php文件,在文件中写入如下内容

<?php phpinfo(); ?>

在浏览器中打开http://127.0.0.1:8899/index.php 和  http://127.0.0.1:8899/info.php

会发现网页出来是空白的,没有显示任何东西,所以将以下代码放入server中

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

然后重启,最后的结果如下所示

 

4、至此,nginx已经和php平台打通

三、php访问mysql

1、安装三个依赖

apt install php5-mysql php5-pgsql php5-sqlite

nginx  php-fmt  mysql全部启动

如果有apache2占用端口,用下面语句关闭

kill -9 $(ps -e | grep apache2 | awk '{print $1}')

2、编写访问代码,以下代码目的在于访问之前创建的mysql这个database,访问后,打印出里面

ruanjian这个table的表字段

<?php
$host = "127.0.0.1"; 
$port = "3306";  
$username = "root"; 
$password = "1"; 
$dbname = "mysql"; 
$charset = "utf8"; 
$dsn = "mysql:dbname=$dbname;host=$host";
 try{
$pdo = new Pdo($dsn, $username, $password);
$pdo->setAttribute(PDO::ATTR_ERRMODE, 
PDO::ERRMODE_EXCEPTION); 
echo "接入mysql成功";
echo "hello world";
echo '<hr>';
$state = $pdo->query("select * from ruanjian "); 
$total_column = $state->columnCount();
var_dump($total_column);
echo '<hr>';
for ($counter = 0; $counter < $total_column; $counter ++) {
    $meta = $state->getColumnMeta($counter);
    $column[] = $meta['name'];
}
print_r($column);
set_exception_handler("cus_exception_handler");
} catch(PDOException $e){
echo "接入mysql失败";
die("连接失败: ".$e->getMessage());
}
?>

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值