web环境的搭建与配置

实验五 web 开发环境的搭建与配置

预习报告

一、实验目的

  1. 正确表述Web服务器和Web应用的工作原理;
  2. 能够在Linux环境下搭建基于Nginx、PHPMySQLWeb开发环境;
  3. 综合运用Linux命令和vim编辑器在Linux环境下进行软件的安装、配置和测试。

二、实验要求

  1. 实验包括预习报告和实验报告;
  2. 实验预习报告应根据课程内容,查阅相关资料,列出与实验相关的背景知识;
  3. 实验报告应包括设计方案、详细步骤、结果分析等,关键过程和运行结果可配以截图说明。

三、实验原理

LNMP平台就是 Linux、 Ngnix、 My SQL、PHP的组合架构,需要 Linux服务器、MySQL数据库、PHP解析环境.

Ngnix特长:高并发,低资源,处理静态网络访问请求非常强
Apache:静态处理和动态处理都可以做,更适合做动态处理
Nginx将动态资源请求交给PHP当中的fpm处理动态请求
PHP主配置文件:php.ini
Nginx将动态资源分配给FPM或Apache

四、实验预习内容

LNMP是指一组通常一起使用来运行动态网站或者服务器的自由软件名称首字母缩写。L指Linux,N指Nginx,M一般指MySQL,也可以指MariaDB,P一般指PHP,也可以指Perl或Python。LNMP代表的就是:Linux系统下Nginx+MySQL+PHP这种网站服务器架构。

Linux是一类Unix计算机操作系统的统称,是目前最流行的免费操作系统。代表版本有:debian、centos、ubuntu、fedora、gentoo等
Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器
Mysql是一个小型关系型数据库管理系统
PHP是一种在服务器端执行的嵌入HTML文档的脚本语言
这四种软件均为免费开源软件,组合到一起,成为一个免费、高效、扩展性强的网站服务系统

Nginx

Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器。

Nginx是一款轻量级的Web服务器/反向代理服务器以及电子邮件代理服务器,并在一个BSD-like协议下发行。由俄罗斯的程序设计师lgor Sysoev所开发,供俄国大型的入口网站及搜索引擎Rambler使用。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好。

Nginx相较于Apache\lighttpd具有占有内存少,稳定性高等优势,并且依靠并发能力强,丰富的模块库以及友好灵活的配置而闻名。在Linux操作系统下,Nginx使用Epoll事件模型,得益此,Nginx在Linux操作系统下效率相当高。同时Nginx在OpenBSD或FreeBSD操作统上采用类似于Epoll的高效事件模型Kqueue.

特点:

—款高性能、轻量级Web服务软件

稳定性高

系统资源消耗低

对HTTP并发连接的处理能力高

单台物理服务器可支持30 000~50 000个并发请求

MySQL安装配置

为了与 Nginx、PHP环境保持一致,此处选择采用源代码编译的方式安装 MySQL组件.

MySQL部署的方法

编译安装 MySQL

优化调整初始化数据库

启动mysq服务并设置root数据库账号的密码

PHP解析环境的安装

  • 配置网页动静分离,解析PHP,有两种方法可以选择.使用PHP的FPM模块,将访问PHP页面的Web请求转交给 Apache服务器去处理,较新版本的PHP已经自带FPM模块,用来对PHP解析实例进行管理、优化解析效率.

  • FastCG将 Http Server和动态脚本语言分离开

  • Nginx专门处理静态请求,转发动态请求

  • PHP FPM专门解析PHP动态请求

  • 单服务器的LNMP架构通常使用FPM的方式来解析PHP

实验报告

一、 实验目的

  1. 正确表述Web服务器和Web应用的工作原理;
  2. 能够在Linux环境下搭建基于Nginx、PHPMySQLWeb开发环境;
  3. 综合运用Linux命令和vim编辑器在Linux环境下进行软件的安装、配置和测试。

二、 实验要求

  1. 实验包括预习报告和实验报告;
  2. 实验预习报告应根据课程内容,查阅相关资料,列出与实验相关的背景知识;
  3. 实验报告应包括设计方案、详细步骤、结果分析等,关键过程和运行结果可配以截图说明。

三、 实验原理

  1. 综合运用Linux命令和vim编辑器在Linux环境下进行软件的安装、配置和测试。
  2. 基于Nginx、PHPMySQL完成Web开发。

四、 实验内容

实验环境: 基于阿里云云起实验平台所提供的实验资源,CentOS操作系统的服务器.

mysql安装

  1. 执行如下命令,下载并安装MySQL官方的Yum Repository。
wget -i http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql-community-server
web环境的搭建与配置_第1张图片
  1. 执行如下命令,启动 MySQL 数据库。
systemctl start mysqld.service
  1. 执行如下命令,查看MySQL运行状态。
systemctl status mysqld.service
  1. 执行以下命令,查看MySQL初始密码。
grep "password" /var/log/mysqld.log
  1. 执行以下命令,登录数据库。
mysql -uroot -p
  1. 执行以下命令,修改MySQL默认密码。
mysql > set global validate_password_policy=0;  
mysql > ALTER USER 'root'@'localhost' IDENTIFIED BY '12345678';
  1. 执行以下命令,授予root用户远程管理权限。
mysql > GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '12345678';

web环境的搭建与配置_第2张图片

  1. 输入exit退出数据库。

nginx安装配置

  1. 安装Nginx运行所需要的插件。
  • 安装gccgccLinux下的编译器,它可以编译C、C++、Ada、C#Java等语言。
yum -y install gcc
  • 安装pcre。pcre是一个perl库,Nginx的HTTP模块使用pcre来解析正则表达式。
yum install -y pcre pcre-devel
  • 安装zlib。zlib是一个文件压缩和解压缩的库,Nginx使用zlib对HTTP数据包进行gzip压缩和解压。
yum install -y zlib zlib-devel
  1. 下载Nginx安装包。
wget http://nginx.org/download/nginx-1.17.10.tar.gz
  1. 解压Nginx安装包。
tar -zxvf nginx-1.17.10.tar.gz
  1. 编译安装Nginx。
cd nginx-1.17.10
./configure
make && make install
  1. 启动Nginx。
cd /usr/local/nginx/
sbin/nginx
  1. 测试Nginx启动。在浏览器地址栏输入ECS服务器的公网地址,101.132.67.54,出现如下界面表示安装启动成功。

web环境的搭建与配置_第3张图片

php安装配置

  1. 安装PHP。
yum -y install php php-mysql php-fpm
  1. 在nginx.conf文件中增加对PHP的支持。
vim /usr/local/nginx/conf/nginx.conf

进入Vim编辑器后,按下i键进入编辑模式,在server的根路由配置中新增index.php。

location / {
      root   html;
      index  index.html index.htm index.php;
}

并在根路由下面新增以下配置。

if (!-e $request_filename) {
     rewrite ^/(.*)$ /index.php/$1 last;
}

location ~ .*\.php(\/.*)*$ {
     fastcgi_pass   127.0.0.1:9000;
     include       fastcgi.conf;
     fastcgi_index  index.php;
}

修改后的nginx.conf文件如下图所示。

web环境的搭建与配置_第4张图片

按下ESC键,输入:wq保存并退出Vim编辑器。

  1. 重启php-fpm服务。
systemctl restart php-fpm
  1. 重启Nginx服务。
/usr/local/nginx/sbin/nginx -s reload
  1. 检查PHP安装。

a. 在Nginx的网站根目录下创建PHP探针文件phpinfo.php

echo "" > /usr/local/nginx/html/phpinfo.php

b. 访问PHP探针页面。在浏览器地址栏输入http://101.132.67.54/phpinfo.php(请将101.132.67.54替换为ECS服务器的公网地址),出现如下页面表示PHP环境配置成功。
web环境的搭建与配置_第5张图片

wordpress安装配置

使用filezillawordpress上传到服务器进行后续的部署。
web环境的搭建与配置_第6张图片

五、 实验结论

  通过本次实验掌握了基于CentOS搭建并配置LNMP的Web开发环境的相关操作,学习并使用了WordPress搭建个人博客的相关教程。在处理实验过程中的相关错误时也学习到了基本的常见错误应对与解决策略。同时也综合运用了Linux命令和Vim编辑器在linux环境下进行软件的安装、配置和测试工作。对于之前的知识进行了一个综合的运用和协同工作。

你可能感兴趣的:(笔记,学习笔记,探究,java,开发语言,后端)