2023-12-29 服务器开发-Centos部署LNMP环境

摘要:

2023-12-29 服务器开发-Centos部署LNMP环境

centos7.2搭建LNMP具体步骤

1.配置防火墙

CentOS 7.0以上的系统默认使用的是firewall作为防火墙,

关闭firewall:

复制代码
systemctl stop firewalld.service         #停止firewall 
systemctl disable firewalld.service      #禁止firewall开机启动

2.安装以及配置nginx

(1)可直接使用服务器内自带的yum源进行安装。

yum install -y nginx

(2)修改nginx默认配置文件。

复制代码
cd    /etc/nginx/                              #nginx的默认配置目录
mv    nginx.conf    nginx.conf.swf             #将通过yum安装自动生成的配置文件换名,不再使用。
mv     nginx.conf.default  nginx.conf          #将default文件修改为加载配置文件

(3)启动nginx,并访问。

复制代码
systemctl start nginx.service                     #启动nginx 
systemctl stop nginx.service                      #停止 
systemctl restart nginx.service                   #重启 
systemctl enable nginx.service               
此时使用公网IP访问,即可打开nginx的默认欢迎页面。

3.安装php环境以及依赖扩展,并开启php

(1)安装环境。

复制代码
yum install -y    php-fpm   php php-mysql php-gd libjpeg* php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-bcmath php-mhash
bash 复制代码
yum install php php-fpm php-mysql -y

(2)启动php-fpm。

复制代码
systemctl start php-fpm.service             #启动php-fpm
systemctl enable php-fpm.service            #设置开机启动

(3)修改配置文件,使nginx兼容php。

vim /etc/nginx/nginx.conf

在location内添加上index.php

把php识别之前的#注释给去掉就可以了,并且改一下fastcgi_param

复制代码
location / {
root html;
index index.php index.html index.htm;
}

error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}

location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME    $document_root$fastcgi_script_name;
include fastcgi_params;
}

(4)重启nginx和php-fpm

复制代码
systemctl restart php-fpm.service
systemctl restart nginx.service

(5)访问phpinfo验证

进入nginx默认根目录 cd /usr/share/nginx/html/

vim index.php

复制代码
<?php
echo phpinfo();
?>

此时访问公网IP/index.php,可看到php的探针页面

4.安装mysql,并连接php进行验证

(1)centos7以上的系统,默认数据库为MariaDB,需要下载mysql源进行安装。

复制代码
wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
rpm -ivh mysql-community-release-el7-5.noarch.rpm
yum install -y mysql-community-server

成功安装之后重启mysql服务:

systemctl start mysqld

(2)安装后的mysql数据库是没有密码的,可进入数据库后授权,设置密码。

复制代码
mysql -u root  
mysql> use mysql;  
mysql> update user set password=PASSWORD("这里输入root用户密码") where user='root';  
mysql> flush privileges;  
mysql> exit  

(3)编写php测试mysql是否可连接的代码,并访问。

vim /usr/share/nginx/html/test.php

复制代码
<?php
$link=mysql_connect("localhost","root","刚才所设置的数据库密码");
if(!$link) echo "FAILD!error";
else echo "OK!You succeeded.";
?>

保存后,此时访问IP/test.php,可看到

至此,基于centos7.2系统所安装的LNMP环境已经全部搭建完毕。

相关推荐
宁zz5 小时前
乌班图安装jenkins
运维·jenkins
无名之逆5 小时前
Rust 开发提效神器:lombok-macros 宏库
服务器·开发语言·前端·数据库·后端·python·rust
大丈夫立于天地间5 小时前
ISIS协议中的数据库同步
运维·网络·信息与通信
rainFFrain6 小时前
单例模式与线程安全
linux·运维·服务器·vscode·单例模式
GalaxyPokemon6 小时前
Muduo网络库实现 [九] - EventLoopThread模块
linux·服务器·c++
xujiangyan_7 小时前
nginx的反向代理和负载均衡
服务器·网络·nginx
@郭小茶8 小时前
docker-compose方式部署docker项目
运维·docker·容器
GalaxyPokemon8 小时前
Muduo网络库实现 [十] - EventLoopThreadPool模块
linux·服务器·网络·c++
自由鬼8 小时前
开源虚拟化管理平台Proxmox VE部署超融合
linux·运维·服务器·开源·虚拟化·pve
孤独得猿9 小时前
Qt常用控件第一部分
服务器·开发语言·qt