144
Nginx是一个高性能的WEB服务器。Nginx以免费开源协议的形式发布,在应用过程中,其凭借良好的稳定性、反向代理与负载均衡功能和低系统资源的消耗而受到了业界的高度认可。P HP 即“超文本预处理器”,是一种通用开源脚本语言。My S Q L是最流行的关系型数据库管理系统之一。事实上,基于N g i n x +P H P +
MySQL技术开发的国内网站很多,如百度、京东、腾讯、淘宝等。1 WEB服务器Nginx的安装调试
由于是绿软件,无须安装,在Nginx下载压缩包后展开即可用,无须安装。可以在任意盘新建一个目录如e:\myapp\nginx,将展开的所有文件拷贝到nginx目录里。
简单介绍下几个nginx使用命令,在Nginx目录下DOS 命令行方式执行:
启动nginx:start nginx
修改配置f后重新加载生效:nginx -s reload
检查f配置是否有错误:nginx -t 重新打开日志文件:nginx -s reopen 快速停止nginx:nginx -s stop 完整有序的停止ngin:nginx -s quit
启动nginx后,打开浏览器,在地址栏输入localhost或127.0.0.1,看到“Welcome tonginx!”的默认页面就代表安装成功了(后面再介绍修改配置f以符合应用需求)。
2 脚本语言PHP的安装调试
P H P 即“超文本预处理器”,是一种通用开源脚本语言。PHP是在服务器端执行的脚本语言,与C语言类似,是常用的网站编程语言。PH P独特的语法混合了C、J ava 、Perl以及PHP自创的语法。它利于学习,使用广泛,主要适用于Web开发领域。
2.1 在PHP下载安装包
选择自己需要的版本以及电脑操作系统是64位还是
32位的,Nginx需要选择非线程安全版本(作者下载的是VC15 X64 Non Thread Sase)。
2.2 安装PHP
建立PHP目录,把我们下载的php压缩包解压到php 里面。
用文本编辑器打开PHP/php.ini
指定php的ext路径,把里面的路径改为我们安装php 文件夹中的ext目录,比如:
extension_dir = "E:\myapp\php\ext"
启动php服务:以管理员身份通过cmd进入DOS命令行,进入“E:\myapp\php”目录,检测下面两个可执行文件是否可以运行,如果不能运行,比如出现操作系统缺少dll之类,根据错误提示信息解决,直到能正常运行:
php-cgi -h php -v
3 MySQL数据库安装配置
作为软件应用前的重要准备工作,数据库的初始化安全对于软件的合理运行具有至关重要的作用。研究人员指出,该步骤一定要认真按步骤进行,注意地址、初始化密码等信息正确,否则往往会导致后续工作压力的大幅升高,从而对软件的合理运行造成影响。
收稿日期:2021-02-07
作者简介:王跃进(1963—),男,土家族,重庆人,本科,正高级教师,研究方向:高中信息技术教学、计算机网络技术。Nginx+PHP+MySQL 服务器环境搭建技术实践
王跃进1 舒大荣2
(1.贵州省铜仁第一中学,贵州铜仁 554300;2.贵州省德江第一中学,贵州铜仁 554300)
摘要:要自己建设一个应用网站,需要选择好Web服务器、编程语言和数据库,搭建好服务器环境,才能开发应用。本文介绍基于开源的Nginx+PHP+MySQL技术在Windows服务器环境搭建技术实践,所有配置代码是在最新版本(Nginx1.16.1、PHP 7.4.4、MySQL8.0.19)测试通过。
关键词:Nginx;PHP;M ySQL ;服务器环境;搭建技术
中图分类号:TP311.13文献标识码:A
文章编号:1007-9416(2021)03-0144-03
DOI:10.19695/jki12-1369.2021.03.45
设计开发
2021年第 3 期
145
3.1 初始化安装数据库
在本次研究中,根据系统选择下载不同版本,本文下载Windows 64位8.0.19版。将zip压缩包mysql-8.0.19-w i n x 64.z i p 文件解压放在想放的位置,比如d :\myapp\mysql下,注意现在的版本没有my.ini文件了,需要自建。
3.2 配置环境变量
鼠标右击计算机,通过属性、高级系统设置、环境变量,将MySQL的bin位置(如d:\myapp\mysql\bin)添加到变量Path中,重新启动计算机生效,以后可以在任何目录用命令启动或关闭MySQL。
3.3 MySQL初始化及服务安装
以管理员身份进入D O S 命令行运行初始化命令:mysqld--initialize--console
完成后注意记录下root@localhost密码(如:+N9jfml-fl->),密码是随机生成的,每次初始化都不一样,在后面修改密码时要用。
安装MySQL服务,使用命令:mysqld--install 上面安装服务成功后,就可以启动服务:ne t st ar t mysql
正常启动会显示启动成功信息。
假如在安装时出现提示:“Th e se rvice alr eady exists!”这是由于之前已经安装过mysql并且没有删除干净,可以用输入sc query mysql,查看一下名为mysql的服务:
sc query mysql
用命令sc delete mysql,卸载(删除)mysql服务,然后再安装:
若在启动过程中,提示:“发生系统错误2。系统不到指定的文件。”这是因为MySQL的路径没有指定,解决办法是,先将MySQL卸载,输入命令mysqld remove,切换到MySQL的目录,如d:\myapp\mysql,然后再执行安装mysqld--install,成功后,再net start mysql,这时候一般应该正常启动了。如果依然不行,那就可能操作系统中注册表里HKEY_LOCAL_MACHANE中还有MySQL错误或老版本的MySQL残留信息,搜索删除并重启计算机,重新(删除data目录及其文件)初始化安装(mysqld--initialize--console)。
成功安装后,默认以后随着服务器自动启动,无需手工在启动。
3.4 新建并配置my.ini文件
先关闭MySQL服务:net stop mysql
用文本编辑器新建配置文件my.ini,保存在mysql目录,文件内容如下[1]:
[mysqld]# 设置3306端口port=3306
# 设置mysql的安装目录basedir=D:\myapp\mysql\bin
# 设置mysql数据库的数据的存放目录datadir=D:\myapp\mysql\Data # 允许最大连接数max_connections=200
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
default_authentication_plugin=mysql_native_password [mysql]
# 设置mysql客户端默认字符集[client]
# 设置mysql客户端连接服务端时默认使用的端口port=33063.5 修改root密码
启动MySQL输入初始化密码登陆MySQL:net start mysql mysql -u root -p
输入刚才保存的密码,如:80Z#qtg6iNui 传统修改root密码的sql语句:
set password for root@localhost=password('root');但是MySQL8.0无效了。经研究发现,“mysql5.7.9之后,就没有了password函数,所以,使用传统的password()函数修改r o o t 密码的话,就会提示s q l 错误”。所以,MySQL8.0修改密码的正确方式应该是,在mysql环境下(“mysql>”提示符)使用命令:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';
注意密码一定要6位数以上,最后的分号不能少。使用新密码登陆:mysql -u root -p Enter password: ******退出MySQL:exit
重启一下数据库:net start mysql 停止数据库:net stop mysql
4 配置连接Nginx、PHP与MySQL的支持
4.1 修改Nginx配置
用文本编辑器修改配置文件f,到如下两处进行修改[2],修改内容如下:
王跃进 舒大荣:Nginx+PHP+MySQL 服务器环境搭建技术实践
第 39 卷 数字技术与应用 www.szjsyyy
146
location / {
root e:\myapp\www;index index.php;}
location ~ \.php$ {root e:\myapp\www;……}1.2
4.2 修改PHP配置
不同版本有所不同,这里是按最新版php7.4.4进行配置说明),用文本编辑器打开php.ini。
查定位修改:
;extension_dir = "ext",修改为:extension_dir="E:/myapp/php/ext"
;extension=gd2,删除前面的分号,PHP操作图形图像的函数库
;cgi.force_redirect=1,删除前面的分号,CGI二进制文件是在启用force CGI redirect的情况下编译
[MySQLi]、[Pdo_mysql]段按下载的默认设置(MySQL 都是开启的)不需要修改。
启动php-cgi服务,进入命令提示符界面,进入php目录,使用命令:
< -b 127.0.0.1:9000 -c php.ini 使用命令,netstat-a,回车显示进程包含信息:TCP 127.0.0.1:9000 xxxxx:0 LISTENING 说明php-cgi启动成功。
关闭nginx服务的命令:taskkill/F/>nul 关闭 php服务的命令:taskkill/F/ >nul
4.3 测试Nginx+PHP+MySQL服务器环境
编辑一个测试页面文件test.php,存放在WWW目录里,文件内容如下:
mysql下载后安装中出现提示不到安装包<html><head>
<title>test mysql+php+nginx</title></head><body><?php
$mysqli = new mysqli("localhost","root","密码");
if(!$mysqli){
echo "你的数据库连接失败,请检查配置!!";}else{echo "你的数据库连接成功!!";}
$mysqli ->close();?><br></body></html>
打开浏览器,在浏览器地址栏内键入:127.0.0.1/test.php,如看到界面显示“数据库连接成功”,说明Nginx+PHP+MySQL环境基本设置成功。
5 实验总结
要自己建设一个应用网站,需要根据我们的需求,选择好Web服务器、编程语言和数据库,搭建好服务器环境,才能开发应用,否则后患无穷。
5.1 选择Nginx+PHP+MySQL的理由
本文之所以选择Nginx+PHP+MySQL开源软件(Open Source Software,简称为OSS)技术。主要原因为:(1)开源软件更安全,一般来说程序漏洞一旦发现,立刻就会更新;(2)可定制和更灵活,因为源代码在手里,易于二次创意、开发,不用担心被闭源软件供应商;(3)透明度高和利于评估,开源软件比闭源软件更加符合开放的标准。对于闭源的软件,除了供应商告知技术参数、安全标准,用户无从知晓。
基于PHP+MYSQL技术开发应用,其特点是,WEB服务器常用Apache或Nginx。它们可以运行在几乎所有计算机平台上,是最流行的WEB服务器端软件之一。它快速、可靠并且可通过简单的API扩充,将P
erl/Python等解释器编译到服务器中。而Nginx(俄罗斯人伊戈尔·赛索耶夫开发的)WEB服务器,以其处理网络请求的高并发、高性能及高效率,获得了行业界的广泛认可,近年已稳居WEB服务器部署排名前茅,并被广泛用于反向代理和负载均衡。
5.2 成功案例
考虑到跨平台、低成本、兼容性、开源免费等因素,我们工作室采用基于Nginx+PHP+MySQL组合技术进行开发设计的通用数字化证件管理系统(/),通过各单位一年多的试运行,性能与安全性受到用户的一致好评。
参考文献
[1] 王跃进.基于Moodle 的贵州信息技术教师在线培训实践研究[R].贵州:贵州省高中信息技术王跃进名师工作室,2019.[2] 舒大荣.基于PHP+MySQL的多用户在线证书生成系统的开发应用研究[R].贵州:贵州省德江县第一中学,2019.
······下转第149页
2021年第 3 期
149
Nginx+PHP+MySQL Server Environment Construction Technology Practice
WANG Yue-jin 1,SHU Da-rong 2
(1.Tongren No.1 Middle School in Guizhou Province, Tongren Guizhou 554300;
2.Dejiang No.1 Middle School in Guizhou Province, Tongren Guizhou 554300)
Abstract:To build an application website by yourself, you need to choose a web server, programming language and database, and build a good server environment before you can develop an application. This article introduces the technical practice of building a Windows server environment based on the open source Nginx+PHP+MySQL technology. All configuration codes are tested and passed in the latest version (Nginx1.16.1, PHP7.4.4, MySQL8.0.19).
Key words:Nginx; PHP; MySQL;Server environment; Building technology
Design of Fast Positioning System for Field Equipment of Sodium
Cooled Fast Reactor
CHEN Xu,CHEN Yu-xiang,LUO Ming,YE Kai
(CNNP Xiapu Nuclear Power Co., Ltd., Ningde Fujian 355100)
Abstract:Nuclear power plant has a wide range of equipment and operators can not remember the location and important information of the plant.For the same reason,operators need to prepare a lot of information and drawings with operation marks in advance during overhaul or emergencies.It's a waste of time if operators are not familiar with the system.So this article introduces this fast positioning system of sodium cooled fast reactor.This system can reduce hours of searching for device information,positioning equipment and reparation of drawings in daily business or emergencies. Also this system assists operators to complete work correctly and efficiently and has a certain practical value.
Key words:Operators;Field equipment;Positioning system
使用。在本模块中管理员可对数据库进行管理,可以对信息进行新增、查、排序、删除、导出等操作。针对文字信息的编辑,管理员直接在本模块的表格中进行,完成后产生的编辑信息会进入“更新清单”中储存。若对设备在流程图、平面布置图上的位置进行修改,可以直接在修改设备在图纸上的坐标,或是点击“上”“下”“左”“右”按钮进
行微调。完成修改保存后,编辑信息仍会进入“更新清单”中。若用户要新增一份图纸,在图纸添加入本
系统后,新增信息的编辑操作如上文所述。管理员完成设备信息修改后,需要将“更新清单”中的信息导出。系统会自动统计产生的修改信息数量,然后生成更新清单,导出生成Excel 文件和相应的附件。管理员只需将该文件上传至电厂内网,通知各用户下载更新本地系统即可。
数据更新模块开放给用户使用,用户在收到更新通知后,将更新包导入本模块中。该模块中设置了三项内容的更新,分为列表信息、图纸和照片,同时记录了上次更新的时间以及版本。用户选择相应的文件包后,文件中的内容在更新列表中进行展示。点击“更新数据库”,列表中的信息被写入本地数据库,完成更新。
2 结语
核电厂中系统和设备种类繁多,要在短时间内掌握核电站全厂设备位置和关键信息对于每个运行人员是难度太大,需要运行人员经过多年的磨练,付出大量的努力和时间。尤其对于入职不久的新员工,由于知识储备的不够,现场不熟悉,在工作时很容易出现人因失误,这会对
核电站安全运行带来很大的影响。本系统可以在短时间内帮助运行人员知悉现场设备的位置,掌握相关重要信息,不仅可以提高工作效率、缩短运行人员培养周期,而且在很大程度上也保证核电机组安全稳定运行。同时借助本系统还能使图纸的编辑工作变得简单,缩短相关工作的准备时间,提高工作效率。
参考文献
[1] 王金华.核电厂中事件发生机理与人因管理[J].核安全,2014,13(2):1-5.
[2] 刘云.引入分布式控制器可靠性因素的安注系统概率安全分析[D].南京:东南大学,2013.
······上接第146页
陈蓄 陈雨翔 罗鸣等:钠冷快堆现场设备快速定位系统设计
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论