MySQL + PHP+Nginx相连接

本文详细介绍了如何在Ubuntu系统中安装PHP、配置Nginx以及实现PHP通过Nginx访问MySQL数据库。步骤包括安装php-fpm、配置Nginx监听端口、创建PHP文件并设置相关配置,以及编写PHP代码连接MySQL数据库并验证连接成功。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

PHP安装

1、安装php-fpm

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-pfm restart

	启动后查看php监听的端口号
	netstat -antp|grep php
	可知端口号正是我们上一步设置的9000这个端口号

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

Nginx配置 

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

cd /home/ubuntu/nginx/conf
gedit nginx.conf
mkdir /home/ubuntu/8899
server {
        listen       8899;
        server_name  localhost;
		location /{
			root /home/ubuntu/8899;
			index  index.html index.htm;		
		}
	}

配置完记得重启nginx,重启代码如下

sudo /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		/home/ubuntu/8899;
		index 		index.php index.html index.htm;
		fastcgi_pass   127.0.0.1:9000;
		fastcgi_index  index.php;
		include        fastcgi_params;
}

3、访问网页

切换到上页配置的root所对应的目录,创建index.php文件 并在index.php中写入

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

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

<?php phpinfo(); ?>

在/etc/nginx/fastcgi_params 在文件的最后增加两行:

fastcgi_param SCRIPT_FILENAME  $document_root$fastcgi_script_name;  
fastcgi_param PATH_INFO     $fastcgi_script_name;  

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

 

 

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());
}
?>

访问http://127.0.0.1:8899/index.php,出现如下图结果表示成功。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值