Centos7.3服务器搭建LNMP环境的方法
本文将详细介绍Centos7.3服务器搭建LNMP环境的方法。其中LNMP指Linux、Nginx、MySQL和PHP,它们是一种常见的Web服务器环境。
安装必要软件
- 更新系统
yum update
- 安装epel源
yum install epel-release
- 安装常用软件
yum install vim wget net-tools
安装Nginx
- 添加Nginx官方源
“`bash
# 新建文件:/etc/yum.repos.d/nginx.repo
vim /etc/yum.repos.d/nginx.repo
# 内容如下:
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enabled=1
“`
- 安装Nginx
yum install nginx
- 配置Nginx
“`bash
# 新建文件:/etc/nginx/conf.d/default.conf
vim /etc/nginx/conf.d/default.conf
# 内容如下:
server {
listen 80;
server_name www.example.com;
root /var/www/example.com;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
“`
- 启动Nginx
systemctl start nginx
访问 http://服务器IP ,能看到Nginx的欢迎页面,说明Nginx安装成功。
安装MySQL
- 添加MySQL官方源
“`bash
# 新建文件:/etc/yum.repos.d/mysql.repo
vim /etc/yum.repos.d/mysql.repo
# 内容如下:
[mysql57-community]
name=MySQL 5.7 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/7/$basearch/
enabled=1
gpgcheck=0
“`
- 安装MySQL
yum install mysql-server
- 配置MySQL
“`bash
# 修改字符集
vim /etc/mysql/my.cnf
# 在[mysqld]下添加
character_set_server=utf8mb4
# 重启MySQL
systemctl restart mysqld.service
# 设置密码
mysql_secure_installation
“`
- 启动MySQL
systemctl start mysqld.service
- 连接MySQL
mysql -u root -p
输入密码后,能成功进入MySQL控制台,说明MySQL安装成功。
安装PHP
- 添加PHP官方源
“`bash
# 新建文件:/etc/yum.repos.d/php.repo
vim /etc/yum.repos.d/php.repo
# 内容如下:
[php7-amzn]
name=Amazon Web Services PHP 7 Repository
baseurl=https://packages.us-west-2.amazonaws.com/2016.03/php-7.1-amazon-linux-2017.03.repo/$releasever/$basearch/
enabled=1
gpgcheck=0
“`
- 安装PHP和相关模块
bash
yum install php php-fpm php-mysql php-mbstring php-xml php-gd
- 配置PHP
“`bash
# 修改php.ini配置文件
vim /etc/php.ini
# 打开cgi.fix_pathinfo
cgi.fix_pathinfo=0
# 重启php-fpm
systemctl restart php-fpm
“`
- 在Nginx的 default.conf 文件中增加 PHP 的处理
“`bash
# 修改 /etc/nginx/conf.d/default.conf 文件
vim /etc/nginx/conf.d/default.conf
# 在 server 属性中添加:
location ~ .php$ {
try_files $uri =404;
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_script_name;
include fastcgi_params;
}
“`
- 重新启动 Nginx 服务
systemctl restart nginx.service
示例
示例一:在搭建好的 LNMP 服务器上部署 WordPress 站点
- 下载 WordPress
“`bash
# 转到 nginx 根目录
cd /usr/share/nginx/html
# 下载最新版 WordPress
wget https://cn.wordpress.org/latest-zh_CN.tar.gz
# 解压
tar -zxvf latest-zh_CN.tar.gz
# 修改文件夹所属用户和用户组
chown -R nginx:nginx wordpress
“`
- 创建WordPress数据库
“`bash
# 登录 MySQL
mysql -u root -p
# 创建数据库
CREATE DATABASE wordpressdb;
# 创建用户
CREATE USER ‘wordpressadmin’@’localhost’ IDENTIFIED BY ‘wordpresspassword’;
# 给用户授权
GRANT ALL PRIVILEGES ON wordpressdb.* TO ‘wordpressadmin’@’localhost’ IDENTIFIED BY ‘wordpresspassword’;
# 刷新权限
FLUSH PRIVILEGES;
“`
- 在浏览器访问 http://服务器IP/wordpress ,进入WordPress配置界面,填入MySQL相关信息以及网站信息。
示例二:在LNMP环境下部署Laravel应用
- 安装Composer
“`bash
# 下载Composer
cd ~
php -r “copy(‘https://getcomposer.org/installer’, ‘composer-setup.php’);”
# 验证下载文件是否可以正确执行
php composer-setup.php –check
# 安装Composer
php composer-setup.php –filename=composer –install-dir=/usr/local/bin
“`
- 创建Laravel应用
“`bash
# 创建Laravel项目
composer create-project –prefer-dist laravel/laravel laravel-example
# 修改文件夹所属用户和用户组
chown -R nginx:nginx laravel-example
# 设置权限
chmod -R 755 storage
“`
- 修改Nginx的 default.conf 文件
“`bash
# 修改 /etc/nginx/conf.d/default.conf 文件
vim /etc/nginx/conf.d/default.conf
# 在 server 属性中添加:
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ .php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
“`
- 重新启动Nginx服务
systemctl restart nginx.service
- 访问 http://服务器IP ,能看到 Laravel 欢迎页面,说明Laravel应用部署成功。
至此,Centos7.3服务器搭建LNMP环境的方法已经结束,可以根据自己实际的业务需求来进行配置和部署。