1、安装配置Nginx
安装编译器 [root@nginx1 ~]# yum install -y gcc pcre-devel zlib-devel # 编译安装nginx [root@nginx1 ~]# tar xf nginx-1.12.2.tar.gz [root@nginx1 ~]# cd nginx-1.12.2 [root@nginx1 nginx-1.12.2]# ./configure [root@nginx1 nginx-1.12.2]# make && make install
2、安装php-fpm
[root@nginx ~]# yum -y install php-fpm
[root@nginx ~]# systemctl start php-fpm [root@nginx ~]# ss -tlnp | grep :9000 LISTEN 0 128 127.0.0.1:9000 : users:(("php-fpm",pid=1010,fd=0),("php-fpm",pid=1009,fd=0),("php-fpm",pid=1008,fd=0),("php-fpm",pid=1007,fd=0),("php-fpm",pid=1006,fd=0),("php-fpm",pid=955,fd=6))
3.修改配置文件
[root@nginx ~]# vim +65 /usr/local/nginx/conf/nginx.conf
#修改文件65行以下内容
location ~ \.php$ { root html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; include fastcgi.conf; }
[root@nginx ~]# /usr/local/nginx/sbin/nginx -t nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
4.启动服务
[root@nginx ~]# /usr/local/nginx/sbin/nginx [root@nginx ~]# ss -tlnp | grep :80 LISTEN 0 128 *:80 : users:(("nginx",pid=1431,fd=6),("nginx",pid=1430,fd=6)) [root@nginx ~]# vim /usr/local/nginx/html/test.php
5.测试
注意关闭防火墙和SELinux
配置PHP支持Redis
1.安装PHP扩展
[root@nginx ~]# yum install -y php-devel automake autoconf
2.安装php-redis
将redis-cluster-4.3.0.tgz传到虚拟机Nginx家目录下
[root@nginx ~]# tar -xf redis-cluster-4.3.0.tgz [root@nginx ~]# cd redis-4.3.0/ [root@nginx redis-4.3.0]# phpize Configuring for: PHP Api Version: 20100412 Zend Module Api No: 20100525 Zend Extension Api No: 220100525 [root@nginx redis-4.3.0]# ./configure --with-php-config=/usr/bin/php-config
[root@nginx redis-4.3.0]# ls /usr/lib64/php/modules/redis.so /usr/lib64/php/modules/redis.so
3.修改配置文件重启服务
[root@nginx redis-4.3.0]# vim /etc/php.ini
在文件730行添加以下两行
extension_dir = "/usr/lib64/php/modules" extension = "redis.so"
[root@nginx redis-4.3.0]# systemctl restart php-fpm
4.测试
[root@nginx1 ~]# vim /usr/local/nginx/html/get_redis.php <?php $redis = new redis(); $redis->connect("192.168.1.11", "6379"); $redis->auth("tedu.cn"); echo $redis->get("username"); ?>
在Redis数据库上查看
[root@redis ~]# redis-cli -a tedu.cn** 127.0.0.1:6379> keys * 1) "username"** 2) "letters" 3) "scores" 4) "user1" 5) "hi" 6) "numbers" 7) "lettets" 8) "s1" 9) "num" 10) "s2" 11) "post:10" 127.0.0.1:6379> get username "tom"
创建数据库
mysql> grant all on . to 'root'@'%' identified by 'NSD2021@tedu.cn'; Query OK, 0 rows affected, 1 warning (0.02 sec)
mysql> create database mybbs default charset utf8mb4; mysql> use mybbs ; Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A
Database changed mysql> create table posts( id int primary key auto_increment, title varchar(50), pub_date datetime, content text); mysql> truncate mybbs.posts; #清空表 Query OK, 0 rows affected (0.00 sec)
修改PHP首页
将真机php_redis_mysql_bbs目录下所有内容到nginx的文档目录
[root@nginx ~]# cp -r readme.md /usr/local/nginx/html/ [root@nginx ~]# cp -r index.php /usr/local/nginx/html/ cp: overwrite ‘/usr/local/nginx/html/index.php’? y
修改PHP页面
[root@nginx1 html]# vim index.php # 修改第2行和第8行。需要密码修改第9行,并取消注释
$con = mysql_connect("192.168.2.11","root","NSD2021@tedu.cn"); #数据库服务器地址 ... ... $redis->connect("192.168.1.11", "6379"); # redis服务器地址 // $redis->auth("tedu.cn"); # redis服务器密码, //表示注释
在Nginx上安装php-mysql,重启php-fpm服务
[root@nginx html]# systemctl restart php-fpm [root@nginx html]# yum -y install php-mysql