转自http://fuwu.aieln.com/info/show/711/

软件下载地址(Moodle2.2.2(Build:20120312):http://bbs.aieln.com/article-1409-1.html

[摘要]当前许多高校Moodle课程开展得如火如荼,但大多都是在windows环境下构建的Moodle平台,使用过程中发现该平台很容易出现安全性和稳定性的问题。笔者作为较早接触、使用Moodle的一员,认为Moodle在Linux系统下安装运行更稳定、安全。因此,尝试在RedHat-Linux系统下构建Moodle平台,旨在解决系统安全性及稳定性等问题,意在为Moodle网络课程这个平台提供良好的环境支持。

[关键词]Moodle,Appche,MySQL,PHP,PHP my Admin,Linux

1需求分析MOODLE[1]平台是目前世界上免费的开放源代码、功能强大的、在国际上有一定应用基础的、可以支撑教育信息化课程设计与教学应用的信息技术平台。在国内的许多高校推广,亦是适合中小学基础教育选用的学习环境。但是,Moodle平台是对服务器的硬件要求特别高的网络管理系统,其一、对于大多数的中小学来说,配置一台高配置的服务器,在经费上都是比较困难的;其二、现在大多把Moodle平台安装在windows系统下,由于windows系统自身的原因,服务器经常出现异常,在安全性和稳定性上也带来了很多问题,给教师和学生带来教学上的不便。

怎么解决这个问题,换操作系统?对,Linux操作系统,它强大的网络性能,对硬件的完全支持、以及良好的安全性、稳定性,完全可以解决这一问题。linux操作系统可以在低配的计算机上运行,非常适合中小学开展Moodle网路课程的建设。我的设计思想就是在RedHatLinux下构建Moodle平台。

1.1Linux系统和Windows系统技术对比(1)进程治理及调度:Linux开销较小:在进程治理及调度方面,Linux是一个单块式的操作系统,操作系统通常在用户进程的内存空间内进行,可免去发生系统调用时的进程切换开销。Windows是一个准微内核操作系统,许多功能以单独的进程实现,从而提高了系统的模块化程度,但进程切换上的开销要大一些。Linux支持内核级的线程,但它将线程定义为进程的另一个“执行上下文”,从而简化了进程/线程之间的关系和调度程序的设计,它的线程库提供了和POSIX兼容的线程同步机制。Windows支持的线程是典型的进程/线程模型。它的线程同步机制和Linux类似。Linux中进程是基本的调度单位,它提供了三种调度策略。

(2)进程间通信机制:Linux更灵活:在进程间通信机制上,Linux提供了标准的UNIXIPC机制,而Windows则在基本IPC机制的基础上,提供了许多直接面向应用程序的高级IPC机制。从本质上看,Linux的IPC机制接近于IPC原语,比较底层,提供了最大的灵活性,也可以在此基础上建立更加复杂的高级IPC机制,而Windows在原语级提供的IPC机制有管道、命名管道、消息传递、共享内存、信号量等。

(3)内存治理:Linux优于Windows:在内存治理上,Linux和Windows在面对相同的进程地址空间大小时,对内存布局的使用方式不同。Windows实际只为进程预备了2GB弱的可用虚拟地址空间,而Linux中的进程地址空间使用更灵活些。

(4)安全性:Linux具有一定优势:在安全性方面,Linux采用的是UNIX在安全性方面成功的技术,尽管有一些安全漏洞,但因为设计上的开放性,这些漏洞能够在很快的时间内发现并得到解决。Windows虽然采用的ACL技术,更加复杂和严密,但因为其密码加密步骤过于简单,密码轻易被破解。安全性设计上的不公开性也导致其有很多安全上的漏洞。

美国计算机应急反应小组最近发表的安全漏洞测评报告称,微软的Windows出现了250次安全漏洞,其中有39个安全漏洞的危险程度达到了40分或者40分以上。而RedHatLinux只有46次安全漏洞,其中只有3个安全漏洞的危险程度在40分以上。

所以测试结果表明,采用linux的安全性确实比windows系统有一定的优势[2]。

1.2Web服务器:Linux系统和Windows系统性能对比多数用户会在linux和windows之间选择,这是两个最热门的Web服务器。本文将对监测采集的大量数据进行分析,比较每个操作系统的正常运行时间和性能。

我们监测了13,000的网站,除去采用不常用操作系统的网站,我们整理了12,089个网站的数据。不同操作系统在这些网站所占的比例请见下表:

 

系统
 
数量
 
百分比
 
Linux
 
7295
 
60.3%
 
Windows
 
2052
 
17.0%
 
FreeBSD
 
860
 
7.1%
 
Minix
 
774
 
6.4%
 
OpenBSD
 
421
 
3.5%
 
NetBSD
 
238
 
2.0%
 
Digital UNIX
 
183
 
1.5%
 
Solaris
 
157
 
1.3%
 
Mac OS X 
 
109
 
0.9%
 

数据表明,Linux达60%,占据了将近2/3的绝对多数,Windows位居次席,占17%。下面我们测试每种系统的正常运行时间和响应速度。测试人员在美国,德国和奥地利三地同时每三十分钟监测一次,也就是说每周每个网站统计1008次记录。这意味着每周统计Linux服务器的记录7,295*1,008=7,353,360次,Windows服务器的记录则为2052*1008=2,068,416次。大量为我们进行操作系统的比较提供了坚实基础,假定忽略其他方面的差异(ISP的差异,良好的应用设计等)。我们将正常运行时间的平均值整理后,得到了下面的数据表格:

 

第14星期
 
正常运行
 
回应
 
第15星期
 
正常运行
 
回应
 
第16星期
 
正常运行
 
回应
 
NetBSD
 
98.91
 
363
 
NetBSD
 
99.42
 
387
 
NetBSD
 
99.68
 
382
 
OpenBSD
 
98.59
 
435
 
Solaris
 
99.28
 
418
 
Linux
 
99.05
 
466
 
Linux
 
98.49
 
452
 
OpenBSD
 
99.20
 
444
 
OpenBSD
 
98.98
 
448
 
Solaris
 
98.35
 
412
 
FreeBSD
 
99.04
 
502
 
Mac OS X
 
98.95
 
570
 
FreeBSD
 
98.25
 
492
 
Linux
 
99.03
 
460
 
FreeBSD
 
98.94
 
503
 
Digutal 
 
97.99
 
473
 
Digutal
 
98.96
 
479
 
Windows
 
98.56
 
517
 
Windows
 
97.94
 
499
 
Windows
 
98.35
 
520
 
Digutal
 
98.23
 
470
 
Mac OS X
 
96.70
 
568
 
Mac OS X
 
97.82
 
553
 
Solaris
 
97.68
 
410
 
Minix
 
88.70
 
513
 
Minix
 
94.77
 
533
 
Minix
 
95.04
 
534
 

数据表明,NetBSD在正常运行时间上领跑其他操作系统。其他BSD系统和Solaris也排名靠前。Linux每周都高于Windows超过0.5%。0.5%差距意味着每周50分钟的宕机,或者每月3小时36分钟。1分钟的宕机损失面对商业应用有时可能十分巨大。Windows正常运行时间较低的一个原因是系统更新,安装软件后需要重启。

另一个重要参数就是响应时间,——用户提交http请求后,打开网页的时间。我们将刚才的数据按照每个操作系统的响应时间排序,如下表:

 

第14星期
 
正常运行
 
回应
 
第15星期
 
正常运行
 
回应
 
第16星期
 
正常运行
 
回应
 
NetBSD
 
98.91
 
363
 
NetBSD
 
99.42
 
387
 
NetBSD
 
99.68
 
382
 
Solaris
 
98.35
 
435
 
Solaris
 
99.28
 
418
 
Solaris
 
97.68
 
410
 
OpenBSD
 
98.59
 
435
 
OpenBSD
 
99.20
 
444
 
OpenBSD
 
98.98
 
448
 
Linux
 
98.49
 
452
 
Linux
 
99.03
 
460
 
Linux
 
99.05
 
466
 
Digutal
 
97.99
 
473
 
Digutal
 
98.96
 
479
 
Digutal
 
98.23
 
470
 
FreeBSD
 
98.25
 
492
 
FreeBSD
 
99.04
 
502
 
FreeBSD
 
98.94
 
503
 
Windows
 
97.94
 
499
 
Windows
 
98.35
 
520
 
Windows
 
98.56
 
517
 
Minix
 
88.70
 
513
 
Minix
 
94.77
 
533
 
Minix
 
95.04
 
534
 
Mac OS X
 
96.70
 
568
 
Mac OS X
 
97.82
 
553
 
Mac OS X
 
98.95
 
570
 

Linux的响应速度要比Windows快50微秒左右。总体上说,统计数据证明基于Linux的服务器效率和响应速度要高于Windows服务器【3】。

更多Moodle信息:http://www.aieln.com/system/moodle/

       2系统概述2.1RedHat-Linux操作系统概述Linux的诞生可以追溯到1991年,当Linus还是芬兰赫尔辛基大学的一名学生时,他对当时为教学而设计的Minix操作系统提供的功能不满意,于是他决定自己写比Minix更强大的类UNIX操作系统来取代Minix,后来这个类UNIX操作系统就是Linux。

Linux的特点:Linux是一种优秀的操作系统,支持多用户、多进程、多线程、实时性好、功能强大而稳定。可以从几个方面来阐述linux良好的服务器功能:1、广泛的协议支持;2、文件系统下良好的兼容性;3、支持多种网络互联;4、完善的网络支持;5、强大的远程管理;6、多种应用系统的支持;

RedHat是红帽最成功的LINUX发行版本之一,它的的特点是安装和使用简单,RedHat可以让用户很快享受到Linux的强大功能而免去繁琐的安装与设置工作.RedHat是全球最流行的Linux版本,RedHat已经成为Linux的代名词,很多人一提到Linux就会毫不犹豫的想到RedHat.所以我们用来搭建的服务器也选择RedHat.我们选择的版本是RedHatEnterpriseESLinux,它广泛适用小型企业或部门级的计算环境,如网络服务器、文件服务器、打印服务器、邮件服务器和万维网服务器[4]。

2.2PHP语言概述PHP是:HypertextPreprocessor(超文本预处理器)的缩写,它是一种服务器端的HTML脚本/编程语言,是一种简单的、面向对象的、解释型的、健壮的、安全的、性能非常之高的、独立于架构的、可移植的、动态的脚本语言。PHP是一种HTML内嵌式的语言,PHP与微软的ASP颇有几分相似,都是一种在服务器端执行的嵌入HTML文档的脚本语言,语言的风格有类似于C语言,现在被很多的网站编程人员广泛的运用。PHP独特的语法混合了C、Java、以及PHP自创的语法。它可以比CGI更快速的执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;与同样是嵌入HTML文档的脚本语言JavaScript相比,PHP在服务器端执行,成分利用了服务器的性能;PHP执行引擎还会将用户经常访问的PHP程序驻留在内存中,其他用户在一次访问这个程序时就不需要执行编译程序了,只要直接执行内存中的代码就可以了,这也是PHP高效率的体现之一。PHP具有非常强大的功能,所有的CGI或者JavaScript的功能PHP都能实现,而且支持几乎所有流行的数据库以及操作系统[5]。

2.3MySQL数据库概述MySQL是最受欢迎的开源SQL数据库管理系统,它由MySQLAB开发、发布和支持。

MySQL是一个快速、多线程、多用户的SQL数据库服务器,其出现虽然只有短短的数年时间,但凭借着“开放源代码”的东风,它从众多的数据库中脱颖而出,成为PHP的首选数据库。除了几乎是免费的这点之外,支持正规的SQL查询语言和采用多种数据类型,能对数据进行各种详细的查询等都是PHP选择MySQL的主要原因。

MySQL数据库的主要特征:

MySQL可运行在不同的操作系统下。简单地说,MySQL可以支持Windows95/98/NT/2000以及UNIX、Linux和SUNOS等多种操作系统平台。这意味着在一个操作系统中实现的应用可以很方便地移植到其他的操作系统下。

MySQL拥有一个非常快速而且稳定的基于线程的内存分配系统,可以持续使用而不必担心其稳定性。事实上,MySQL的稳定性足以应付一个超大规模的数据库。

强大的查询功能。MySQL支持查询的SELECT和WHERE语句的全部运算符和函数,并且可以在同一查询中混用来自不同数据库的表,从而使得查询变得快捷和方便。

PHP为MySQL提供了强力支持,PHP中提供了一整套的MySQL函数,对MySQL进行了全方位的支持[6]。

2.4Apache服务器概述Apache[3]是世界排名第一的Web服务器,根据著名的Web服务器调查公司Netcraft的调查,世界上百分之五十以上的Web服务器都在使用Apache。

纵观Apache,它为我们的网络管理员提供了丰富多彩的功能,包括目录索引、目录别名、内容协商、可配置的HTTP错误报告、CGI程序的SetUID执行、子进程资源管理、服务器端图象映射、重写URL、URL拼写检查以及联机手册man等。也就是说,如果您在LinuxServer上成功安装配置了Apache之后,您的计算机也将随着Apache的生效而摇身一变,成为一台名副其实的WebServer,这种变化的确是激动人心的。伴随着自由软件发展的强大动力,我们有理由相信Apache的未来是一片光明的。

在Internet时代,外部主页的发布已经成为树立公司形象的一个重要手段,而内部主页也成为公司管理的主要方式。但是,要想实现这些功能,首先应该把我们的LinuxServer配置成为一台强大的WebServer。时至今日,全球应用最广泛的Web服务器软件就是Apache,本章将详细介绍如何配置Apache服务器。希望各位同仁能够通过阅读本片文章达到理论实践双丰收的目的,在很短的时间里迅速成为一名出色的网络管理员。

Apache的主要特征是:可以运行上所有计算机平台;支持最新的HTTP1.1协议;简单而强有力的基于文件的配置;支持通用网关接口CGI;支持虚拟主机;支持HTTP认证;集成Perl脚本编程语言;集成的代理服务器;具有可定制的服务器日志;支持服务器端包含命令(SSI)支持安全Socket层(SSL)用户会话过程的跟踪能力;支持FastCGI;支持JavaServlets。

3系统开发3.1系统设计3.1.1系统设计思想系统设计思想在一定程度上决定了一个系统设计的成败,从某种角度上反映了一个系统的生命力。本系统的设计思想如下:

(1)架构的合理性

采用目前最热门的组合Linux+Apache+PHP+Mysql,它是建立网站最经济的选择,同时性能也是最安全、可靠的组合。

(2)Moodle平台+LMAP架构

系统主要采用Moodle平台—Apache服务器—PHP+Linux-Mysql数据库这样结构,优化了系统的性能,使Moodle平台的运行更加稳定、安全。如下图1所示:

 


Moodle
 

Apache服务器
 

PHP+Linux
 

Mysql数据库服务器
 

数据
 

3.1.2硬件要求要估算合适的硬件配置,以访问用户数来计算。有两个数字需要考虑,一个是浏览用户数,能够浏览站点的最大用户数,是你的单位内拥有的计算机的数量;另一个是同时访问数据库的用户数,即需要参加Moodle课程活动的用户。对于单个服务器的计算规则是:最大的并行使用数据库的用户=RAM(1GB)×50,最大的浏览用户数=前者的5倍。例如,一个大学拥有500台电脑、100个用户同时访问,服务器要支持这些并发访问的用户需要大约2G的内存。除了内存,处理器的速度和硬盘的容量也是需要考虑的因素,硬盘空间至少要有160M,其实你需要大的硬盘空间来存放教师的课程资源[7]。

试验机的配置:

■CPU:PentiumⅣ2.93HZ

■内存:512M

■硬盘:80G

■网卡:10/100

■光驱:DVD-ROM

■显卡:独立显存128M

从上面的公式可以算出试验机可以支持最大并行使用数据库的用户人数为25-50人之间。

3.1.3软件环境(1)操作系统RedHatAS4可在http://www.verycd.com/topics/32515/下载[Redhat.Enterprise.Linux.Advanced.Server.4].RHEL4-i386-AS-disc1-jrt.iso文件,总共4个文件,用刻录机刻录成光盘。

(2)Web服务器软件推荐使用Apache,可在http://httpd.apache.org/download.cgi下载安装文件httpd-2.0.59.tar.gz。

(3)数据库服务器软件推荐使用MySQL,可在http://dev.mysql.com/downloads/下载安装文件mysql-5.0.22.tar.gz。

(4)PHP安装文件可在http://www.php.net/downloads.php下载,下载文件php-4.4.4.tar.gz。

(5)phpMyAdmin文件可在网站http://www.phpmyadmin.net/homepage/downloads.php下载,文件名phpmyadmin.zip,这是管理MySQL数据库的工具。

(6)库软件:

libpng-1.2.10.tar.bz2Compress-Zlib-1.42.tar.gz

libxml2-2.6.23.tar.bzjpegsrc.v6b.tar.gzZendOptimizer-2.5.7-linux-glibc21-i386.tar.gzopenssl-0.9.7i.tgzperl-5.8.8.tgz

Eaccelerator(加速器)可在http://download.chinaunix.net/disc/linux/分别下载。

(7)Moodle官方下载地址:http://download.moodle.org/,下载Moodle1.8,文件名为:moodle-latest-18.tgz。

(8)在网站http://download.moodle.org/lang/,下载简体中文语言包zh_cn_utf8.zip

3.2系统的安装流程3.2.1RedHat服务器的安装说明注意事项一:在安装前一定要了解两个系统的文件系统不一样。windows所用的文件系统主要有FAT16、FAT32和NTFS;Linux所用的文件系统主要有exit2、exit3。

注意事项二:对试验机系统硬件型号要了解特别清楚,要是安装双系统一定要记住,把Linux系统安装在最后一个盘符,分出最少10G的空间,安装双系统的顺序是先安装windows在安装Linux。

注意事项三:Linux分区方案:安装Linux时,需要在硬盘建立Linux使用的分区,在大多情况下,至少需要为Linux建立以下3个分区。/boot分区:/boot分区用于引导系统,它包含了操作系统的内核和在启动系统过程中所要用到的文件,该分区的大小一般100MBswap分区。

swap分区的作用是充当虚拟内存,其大小通常是物理内存的两倍左右(当物理内存大于512MB时,swap分区为512MB即可)。例如物理内存是128MB,那么swap分区的大小应该是256MB。

/(根)分区:Linux将大部分的系统文件和用户文件都保存在/(根)分区上,所以该分区一定要足够大,一般要求大于5GB。

3.2.2操作系统安装具体步骤(1)启动计算机,进入BIOS设置程序,设为从CD-ROM启动。然后把RedHatEnterpriseLinux第1张安装盘放入光驱。

(2)在“boot:”提示符状态下按“回车”键,安装程序会提示用户是否要检测安装光盘。(3)系统开始启动图形界面的安装程序。

(4)进入安装语言的选择界面

(5)进入“键盘配置”后,安装程序会自动为用户选取一个通用的键盘类型(美国英语式)。

(6)进入磁盘分区界面后,可以选择“自动分区”或“用DiskDruid手工分区”。这里试验机安装双系统所以,选择手工分区。

(7)如果在新硬盘上执行安装,因此会出现一个警告对话框,提示用户硬盘sda上的分区表无法读取,安装程序需要对其硬盘执行初始化操作,硬盘上的所有数据将会丢失。

(8)进入磁盘分区界面后,可以看到手工分区提供一个图形化操作界面,点击新建一个/boot分区,分区大小100M,在点击新建分区swap分区,分区大小根据试验机的物理内存翻一倍(如果物理内存为256那512就可以了),一般512M就可以。点击新建最后一个分区/(根分区),把剩余的空间全部划分到这个分区。

(9)在引导装载程序配置界面中,可以设置引导装载程序GRUB的属性。

(10)在网络配置界面中,安装程序提供通过DHCP自动配置和手工设置两种配置网络的方法。

(11)Linux本身内置了软件防火墙以加强计算机连接网络的安全性。默认Linux防火墙是禁用的,还有SELinux也设置为“已禁用”。

(12)在选择系统支持的语言界面中,可以选择系统安装的语言和系统默认语言,在这里建议选择系统默认的。

(13)在时区选择界面中,应根据实际来选择。这里选择“亚洲/上海”选项,然后单击“下一步”按钮。

(14)在设置根口令界面中,可以为root管理员账号设置口令。

(15)软件包安装的默认设置界面中,安装程序会显示将要安装的组件。

(16)在选择软件包组界面中,为了方便编辑各种服务的配置软件和安装基于源程序的软件包,建议安装“应用程序”中的“编辑器”和“开发”中的“开发工具”。

(17)在即将安装界面中,安装程序会让用户做安装的最后确认。

(18)安装程序会非常善意地提醒用户需要准备的安装光盘。

(19)安装程序开始安装RedHatEnterpriseLinux。

(20)在整个漫长的安装过程,安装程序会提示更换光盘。

(21)最后安装程序报告系统安装完毕。[8]

备注:(由于安装是一个动态的过程,所以我已经将该系统的安装用录屏软件记录下来,会放在moodle课程中,以供大家学习)。

3.2.3操作系统环境配置(1)设置语言参数:点击键盘Ctrl+Alt+F1,进去文本模式,输入命令:locale查看环境,#vi/etc/sysconfig/i18n,将第1句“LANG=zh_CH.UTF-8”改为“LANG=zh_CN.GB18030”。

(2)配置网络参数:输入命令#setup,选择网络配置,我的网络配置参数:“ip地址:210.27.205.14子网掩码:255.255.255.128网关:210.27.205.1DNS服务器:202.201.128.2”试验机把Linux系统挂载在最后一个盘符,安装系统所必须的软件在windows系统下的E盘和F盘,所以要挂载这两个盘符。

(3)挂载windows分区:要注意windows分区下的CDEF盘在Linux下设备号分别是sda1、sda5、sda6、sda7。

#/mnt/e/mnt/f

#vi/etc/fstab添加下面的命令到该文本中

/dev/sda6/mnt/evfatiocharset=gb2312,umask=0,codepage=93600

/dev/sda7/mnt/fvfatiocharset=gb2312,umask=0,codepage=93600

安装RedHat服务器完毕!

3.2.4安装MySql数据库安装之前,必须保证电脑上以前安装过的mysql服务器彻底卸载掉了。具体步骤:

安装mysql-5.0.22.tar.gz

#tarzxvfmysql-5.0.22.tar.gz/*tar为linux下的解压命令*/

#cdmysql-5.0.22

#./configure--prefix=/usr/local/mysql--sysconfdir=/etc--localstatedir=/var/lib/mysql/*设置mysql的安装目录*/

#make/*编译命令*/

#makeinstall

#prefix=/usr/local/mysqlmysql/*安装的目标目录*/

#sysconfdir=/etcmy.ini/*配置文件的路径*/

#localstatedir=/var/lib/mysql/*数据库存放的路径*/

#groupaddmysql/*创建mysql用户*/

#useradd-gmysql-d/usr/local/mysql-s/sbin/nologinmysql/*设置mysql目录为用户mysql属组*/

如果系统没有mysql这个用户的话,最好做以下这步:

useradd-M-o-r-d/var/lib/mysql-s/bin/bash-c"MySQLServer"-u27mysql

#/usr/local/mysql/bin/mysql_install_db--user=mysql/*安装完以后要初始化数据库*/

#chown-Rroot/usr/local/mysql/*设置目录访问权限*/

#chgrp-Rmysql/usr/local/mysql

#chown-Rroot/usr/local/mysql/bin

#chgrp-Rmysql/usr/local/mysql/bin

#chgrp-Rmysql/var/lib/mysql

#chmod777/var/lib/mysql

#chown-Rroot/var/lib/mysql/mysql

#chgrp-Rmysql/var/lib/mysql/mysql

#chmod777/var/lib/mysql/mysql

#chown-Rroot/var/lib/mysql/mysql/*

#chgrp-Rmysql/var/lib/mysql/mysql/*

#chmod777/var/lib/mysql/mysql/*

#chmod777/usr/local/mysql/lib/mysql/libmysqlclient.a

运行命令#/usr/local/mysql/bin/mysqld_safe--user=mysql&测试安装是否成功

如果显示#Startingmysqlddaemonwithdatabasefrom/usr/local/mysql/var表示安装成功

做完上面的步骤,然后把你编译目录的一个脚本COPY过去

cpsupport-files/mysql.server/etc/rc.d/init.d/mysqld/*把mysql的启动目录添加到系统启动目录init中,启动命令为mysqld*/

#chkconfig--addmysqld/*添加系统自起服务命令*/

用ntsysv设置使mysql每次启动都能自动运行。

好了,至此mysql安装完毕,你可以这样起动你的mysql服务

#/etc/rc.d/init.d/mysqldstart

下面这步比较关键

#ln-s/usr/local/mysql/lib/mysql/usr/lib/mysql

#ln-s/usr/local/mysql/include/mysql/usr/include/mysql

3.2.5Openssl(安全套接层协议)的安装#tarzxvfopenssl-0.9.7i.tgz

#cdopenssl-0.9.7i

#./config–prefix=/usr/share/ssl//*安装目录在/usr/share/ssl下*/

#make

#makeinstall

#makeclean/*清楚安装完的垃圾文件*/

3.2.6Apache服务器的安装安装之前,必须保证电脑上以前安装过的apache服务器彻底卸载掉了。

具体安装步骤:

#tarzxvfhttpd-2.2.4.tar.bz2

#cdhttpd-2.2.4

#./configure--prefix=/usr/local/apache2--enable-shared=max--enable-module=rewrite--enable-so--enable-ssl--with-ssl=/usr/share/ssl/--enable-so--enable-logio--enable-module=most/*安装apache的安装目录以及ssl的配置*/

#make

#makeinstall

#makeclean

打开apache配置文#cd/usr/local/apache2/conf/httpd.con修改其中的user和group为apache。

开机自动加载apache服务#vi/etc/rc.d/rc.local

在里面加入一行/usr/local/apache2/bin/httpd-kstart

测试:在浏览器中输入http://localhost/看到It’sworks就表示安装成功了!

3.2.7安装各种库(1)libxml2安装/*libxml2是一个C程序解析器*/

源代码:libxml2-2.6.23.tar.bz2

#tarjxflibxml2-2.6.23.tar.bz2

#cdlibxml2-2.6.23

#./configure

#make

#makeinstall

#makeclean

(2)zlib安装/*zlib库,很多程序中的压缩或者解压缩函数都会用到这个库*/

源代码:Compress-Zlib-1.42.tar.gz

#tarzxvfCompress-Zlib-1.42.tar.gz

#cdzlib-14.2

#perlMakefile.PL

#make

#maketest

(3)libpng安装/*libpng是多种应用程序使用的解析PNG图象格式的库*/

源代码:libpng-1.2.10.tar.bz2

#tarjxflibpng-1.2.10.tar.bz2

#cdlibpng-1.2.9

#cpscripts/makefile.stdmakefile

编辑makefile将prefix改为prefix=/usr/local/libpng2

#make

#mkdir/usr/local/libpng2

#makeinstall

#makeclean

(4)jpeg安装/*安装JPEG库,在安装GD库的时候如果没有JPEG库,GD将不能生成JPEG格式的图象.*/

源代码:jpegsrc.v6b.tar.gz

#tarzxvfjpegsrc.v6b.tar.gz

#cdjpeg-6b

#./configure--prefix=/usr/local/jpeg6--enable-shared

#make

#mkdir/usr/local/jpeg6

#mkdir/usr/local/jpeg6/include

#mkdir/usr/local/jpeg6/lib

#mkdir/usr/local/jpeg6/bin

#mkdir/usr/local/jpeg6/man

#mkdir/usr/local/jpeg6/man/man1

#makeinstall-lib

#makeinstall

#makeclean

(5)GD安装/*gd库提供了一系列用来处理图片的API,使用GD库可以处理图片*/

源代码:gd-2.0.33.tar.gz

#tarzxvfgd-2.0.33.tar.gz

#cdgd-2.0.33

#./configure--prefix=/usr/local/gd2--with-zlib--with-png=/usr/local/libpng2--with-jpeg=/usr/local/jpeg6

编辑Makefile231行将CPPFLAGS=-I/usr/local/jpeg6/include

改为CPPFLAGS=-I/usr/local/jpeg6/include-I/usr/local/libpng2/include

#make

#makeinstall

#makeclean

3.2.8PHP的安装和配置#tarzxvfphp-4.4.4.tar.gz

#cdphp-4.4.4

#./configure--prefix=/usr/local/php--with-apxs2=/usr/local/apache2/bin/apxs--with-xml--with-mysql=/usr/local/mysql--with-zlib--with-jpeg-dir=/usr/local/jpeg6--with-png-dir=/usr/local/libpng2--with-gd=/usr/local/gd2--with-config-file-path=/usr/local/lib--disable-debug--enable-safe-mode--enable-trans-sid--enable-memory-limit--enable-short-tags--disable-posix--enable-exif--enable-ftp--enable-sockets--enable-mbstring--enable-track-vars--with-openssl=/usr/share/ssl--with-curl=/usr/include/curl--with-iconv

#make

#makeinstall

#makeclean

#cpphp.ini-dist/usr/local/lib/php.ini

把php加到apache里去

#vi/usr/local/apache2/conf/httpd.conf

添加LoadModulephp4_modulemodules/libphp4.so

AddTypeapplication/x-httpd-php.php

新建一个test.php

代码如下:

然后在客户端的浏览器访问http://210.27.205.12/test.php,如果看到php的信息页面如下图,则表示php运行环境配置成功。

3.2.9安装ZendOptimizer/*ZendOptimizer(以下简称ZO)用优化代码的方法来提高php应用程序的执行速度*/

#tarxvzfZendOptimizer-2.5.7-linux-glibc21-i386.tar.gz

#./install.sh--prefix=/usr/local/zend

#make

#makeinstall

3.2.10安装和配置Eacceleratr/*eAccelerator是一个自由开放源码php加速器*/

step1:编译eAccelerator

注意:整个命令操作确保在eAccelerator的源码目录中进行。

#exportPHP_PREFIX="/usr/local/php"

#PHP_PREFIX/bin/phpize

#./configure--enable-eaccelerator=shared--with-php-config=$PHP_PREFIX/bin/php-config

#make

step2:安装eAccelerator

运行如下命令

makeinstall

step3:配置eAccelerator

如果使用了系统自带的php,你可以将eAccelerator中的eAccelerator.ini文件拷贝至/etc/php.d中,并且修改默认值。

如果使用的自己编译的PHP,可以修改php.ini,在最后加上如下几行

#vi/usr/local/lib/php.ini

zend_extension="eaccelerator:"(可以通过命令whereiseaccelerator.so查找)accelerator.shm_size="16"

eaccelerator.cache_dir="/tmp/eaccelerator"

eaccelerator.enable="1"

eaccelerator.optimizer="1"

eaccelerator.check_mtime="1"

eaccelerator.debug="0"

eaccelerator.filter=""

eaccelerator.shm_max="0"

eaccelerator.shm_ttl="0"

eaccelerator.shm_prune_period="0"

eaccelerator.shm_only="0"

eaccelerator.compress="1"

eaccelerator.compress_level="9"

step4:创建缓存目录

第三步中设置了缓存目录,这里可以使用如下命令建立:

#mkdir/tmp/eaccelerator

#chmod777/tmp/eaccelerator

3.2.11新建数据库和数据库管理员这里可以使用phpmyadmin轻松做到,将phpmyadmin文件解压到虚拟目录中

#unzipphpmyadmin.zip

#cp-rphpmyadmin/usr/local/apache2/ht就可以通过

http://localhost/phpmyadmin直接访问。(注意新建数据库的时候语言要用utf8-general.gi)图形化的操作界面,操作很简单。

也可以手动建立数据库,输入命令:

#cd/usr/local/mysql/bin

#./mysql

#./mysqladmin–urootpassword*******/*新建root用户密码*/

#createdatabasemoodle/*新建数据库moodle*/

#exit/*推出mysql*/

4Moodle平台的安装和配置需要在文本模式下新建Moodle数据库存储目录,命令如下:

#mkdir/usr/local/apache/moodledata/*新建Moodle数据存储目录*/

#cpmoodle.zip/usr/local/apache2/htdocs/*把Moodle压缩包拷到apache服务器虚拟目录下*/

解压文件和设置访问权限

#cd/usr/local/apache2/htdocs

#unzipmoodle.zip/*解压Moodle.zip*/

#chown-Rapache:apache/usr/local/apache2/moodledata/*修改Moodledata目录的拥有者为apache*/

配置config.php

以root身份拷贝和编辑该文件

#cd/usr/local/apache2/htdocs/moodle

#cpconfig-dist.phpconfig.php

#viconfig.php

将config.php做如下设置

dbtype="mysql"

dbhost="localhost"

dbname="moodle"(数据库名)

dbuser="root"(访问mysql用户名)

dbpass="*******"(访问mysql密码)

prefix="mdl_"(建立数据库中表的前缀,如果为空那么都是没有前缀)

wwwroot=http://210.27.205.14/moodle

dirroot='/usr/local/apache2/htdocs/moodle'

dataroot='/usr/local/apache2/moodledata'

配置apache服务器:#vi/usr/local/apache2/conf/httpd.conf

修改listen80/*监听80端口*/

serverRoot“/usr/local/apache2”/*设置相对根目录*/

serverName210.27.205.14:80/*设置服务器主机名称*/

DocumentRoot“/usr/local/apach2/htdocs/*设置主目录的路径*/

AddDefaultcharesetGB2312/*设置默认字符集*/

ServerAdmin[email=fk_five@126.com]fk_five@126.com[/email]/*设置网络管理员的E-mail地址*/

DirectoryIndexindex.phpindex.html/*设置默认文档*/

安装Moodle中文支持语言包

把zh_cn_utf8.zip解压到Moodle文件夹下的lang目录,具体操作:

#unzipzh_cn_utf8.zip/*解压zip包的命令*/

#mvzh_ch_utf8/usr/local/apache2/htdocs/moodle/lang/*移动zh_ch_utf8包到moodle的lang文件夹下*/

5在moodle平台上搭建网络课程因为考虑到要对linux下构建moodle平台的性能与windows下moodle平台进行对比,所以我设计了一门linux在线学习的网络课程,主要是针对初级阶段的学习者,有命令、服务器的配置等相关教程。

6配置linux防火墙随着网络技术的迅猛发展和因特网的普及,网络概念已不再局限于某些领域,而是深入到社会的各个组成部分,形成了一个初具规模的网络社会。在计算机网络日益扩展和普及的今天,计算机安全的要求更高,涉及面更广,不但要求防治病毒,也要提高系统抵抗外来非法黑客入侵的能力,还要提高对远程数据传输的保密性,避免在传输途中遭受非法窃取。为防止Internet上的不安全因素蔓延到局域网内部,使用防火墙是一种行之有效的解决方法[8]。我介绍一下在Linux下配置防火墙的解决方案。

Moodle平台需要Apache服务器,所以要开通web服务,使用标准的80端口的服务器,我们可在防火墙中进行设置:

#echo"0">/proc/sys/net/ipv4/ip_forward

#iptables–F/*清楚iptables的所有规则*/

#iptables-AINPUT-ilo-jACCEPT/*对网络接口lo的处理*/

#iptables-AINPUT-ptcp-mmultiport--dports22,80-jACCEPT/*匹配来自22,80端口的所有包*/

#iptables-AINPUT-mstate--stateRELATED,ESTABLISHED-jACCEPT/*接受来自RELATED,ESTABLISHED协议的所有包*/

#iptables-PINPUTDROP/*丢弃所有发给本机的包*/

7测试及验证(1)负载测试:在平台正常运行的情况下,找50台客户机同时在线学习,发现系统运行正常,没有出现异常,非常稳定

(2)安全性测试:运用局域网查看工具(lanSee)V1.62对服务器进行攻击,未发现漏洞,上传当下比较流行的病毒,arp病毒、熊猫烧香病毒,发现未出现异常,运行正常。由于时间和这方面知识的匮乏,所以只能进行一些简单的测试,还不够完善,希望以后可以做的更好。

8总结根据Linux操作系统下对Moodle平台的搭建的实现、测试、验证,证明了在同等配置的服务器上运行Linux系统搭建Moodle平台比Windows系统下搭建Moodle平台稳定、安全。因此,Linux操作系统下搭建Moodle平台可以为Moodle这个网络教学平台提供安全、稳定的环境。

参考文献:[1]Moodle官方网站:http://www.moodle.org

[2]开源社区http://www.lupaworld.com/

[3]Apache官方网站www.apache.com

[4]林惠琛、刘殊、尤国君、编著《RedHatLinux服务器配置与应用》,人民邮电出版社,2006年

[5]php官方网站www.php.com

[6]MYSQL官方网站:www.mysql.com

[7]常金娥、陈晋玲,Windows下Moodle平台的构建,晋城职业技术学院信息工程系;科技信息(学术研究),编辑部2007年36期

[8]杨云,在Linux下配置防火墙的技术,(济南铁道职业技术学院信息工程系,济南250013)2004.3第84期

英文摘要LinuxOperatingSystemPlatformforTheStructures

UnderMoodle

MaHaiRui

[Keywords]:MoodleAppcheMySQLPHPPHPmyAdminLinux

附录、遇到的问题以及解决办法1、对RedHat-Linux操作系统没有研究过解决:我从网上下载很多的学习Linux操作系统的相关的视频教程,比如:浙江大学-Linux操作系统、楚广明网络操作系统视频教学(Flash版)、黑客基地Linux特训班等等。学习Linux操作系统的基本命令,已经服务器的配置、运行,软件的安装,系统的安装等一些基本的操作。

2、RedHat-Linux操作系统对Moodle平台“不支持”说明:由于在安装时采用Linux系统自带的软件,所以到时在安装Moodle平台时,Linux系统自带的Mysql版本太低,导致安装的失败。如下图所示:

解决:通过大量的资料查询得知,原来Moodle平台对Mysql版本要求在Mysql4.1.16以上,所以Linux自带的版本太低,导致安装失败。在Mysql官方下载了最新的版本Mysql-5.0.22,需要源码安装。具体的安装代码如上3.3.4

3、源码安装说明:linux系统下的安装有两种,一种是rpm包安装,另一种就是源码安装也就是tar包的安装。对系统软件的安装我们都看到,大多数的软件不是通过系统自带的,都是从网上下载的源码包tgz安装,不是rpm包,所以解决软件的安装也是我碰到的一个比较棘手的问题。

解决:在网上查了大量的资料发现有一个叫gcc编译器,自己机子上没有安装,所以,把安装光盘放进光驱才发现有很多后缀名叫gcc的,需要安装的是perl、gcc-3.4.3-9.EL4、libgcc-3.4.3-9.EL4、gcc-C++-3.4.3-9.EL4、gcc-java-3.4.3-9.EL4、gcc-g77-3.4.3-9.EL4。

4、挂载硬盘出现乱码说明:由于试验机是双系统,所以,很多资料都在试验机的E盘和F盘,而Linux系统在另外划分的硬盘空间,需要把windows下的E盘和F盘挂载到Linux系统下,才能完成Moodle平台的安装。如图所示:

解决:见3.3.3下(3)windows分区的挂载和(1)设置语言参数。

更多Moodle信息:http://www.aieln.com/system/moodle/


搭建环境是:centos+Apache+php+mysql+phpmyadmin+zendoptimizer

1、安装apache

#yuminstallhttpd

2、安装php

#yuminstallphp

3、安装ZEND

wgethttp://downloads.zend.com/optimizer/3.3.3/ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz(下载ZEND)

tarzxvfZendOptimizer-3.0.1-linux-glibc21-i386.tar.gz(解压)

cdZendOptimizer*←进入Zend的源代码目录

./install.sh←运行安装脚本,进入交互界面,直接安装即可,路径可使用默认的

错误描述:Failedloading/usr/local/Zend/lib/Optimizer-3.3.0/php-5.2.x/ZendOptimizer.so:/usr/local/Zend/lib/Optimizer-3.3.0/php-5.2.x/ZendOptimizer.so:cannotrestoresegmentprotafterreloc:Permissiondenied

解决办法:按照字面意思就以为是权限了,但是检查了没有什么差异,又以为是和之前装的eaccelerator冲突,于是又参照了这篇文章,未果。索性直接将eaccelerator去掉了,还是不行。最后发现是和selinux有关,去/etc/selinux/config下面去disable掉selinux后问题解决。

4、安装mysql

#yuminstallmysql-server

5、安装php-mysql

#yuminstallphp-mysql

6、安装GD库

#yuminstallphp-mbstring

#yuminstallphp-gd

#yuminstallphp-xmlrpc

7、重启apache和mysql服务

#servicehttpdrestart

#servicemysqldrestart

8、安装phpmyadmin

通过图形界面的浏览器下载linux下的phpmyadmin,解压后放在/var/www/html下。在浏览器中键入:http://本机ip/phpmyadmin,若能正看到管理数据库的界面,说明phpmyadmin安装正确,此时通过它建立一个新数据库moodle,为后面的moodle安装做准备。

9、安装moodle

(1)下载linux下moodle1.9版和最新汉化包。

(2)在/var/www/下建moodledata文件夹,按F1键到shell命令模式下,给apache组中的apache赋权:#chown-Rapache:apache/var/www/moodledata

(3)将moodle1.9解压到/var/www/html下的moodle文件夹。

(4)将汉化包解压到/var/www/html/moodle/lang下。

(5)将moodle文件夹下的config.disk.php复制一份为config.php,并修改该文件中的参数。

(6)在浏览器中键入http://本机ip/moodle即可访问moodle。


查看全文
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

相关文章

  1. windows客户端开发--使用、屏蔽一些快捷键

    每个windows客户端都有自己的一些快捷键,有的是windows系统提供的。今天就要与大家分享一下,在windows客户端开发过程中对按键的处理。ESC按键 Duilib这个库中,如果不做特殊处理的话,按下ESC会退出程序。这不是我们期望的,我们可以在我们的客户端中屏蔽esc,而微信window…...

    2024/4/25 15:56:41
  2. 【FPGA】【Verilog】【基础模块】矩阵键盘

    结构:用4条I/O线作为行线,4条I/O线作为列线组成的键盘。在行线和列线的每一个交叉点上,设置一个按键。检测方法:【置列线,检测行线(行线包含上拉电阻)】依次将列线置为低电平,即在置某一根列线为低电平时,其它列线为高电平。同时再逐行检测各行线的电平状态 ;若某行为低,…...

    2024/5/3 5:29:27
  3. WebService服务端与客户端开发

    最近客户提出了将我们做的系统接入到他们系统之中,方便他们进行集中管理这个需求,其中主要就是运用了WebService技术来进行系统之间的接入。在此记录一下整个WebService是如何嵌入我们系统的以及具体的开发流程。服务端开发添加jar包 我是使用axis2来辅助生成WebService服务端…...

    2024/5/3 5:47:28
  4. Moodle插件开发笔记

    Moodle作为一个主流的开源网络课程管理系统,以其简单而清晰的使用方式和灵活的扩展空间赢得了多数人的青睐。它解决了大部分信息化学习和课程管理的 共同问题(课程设计、发布、组织、作业、测试、统计、评价等) ,能够不加任何修改就能够进行实际应用。Moodle数据库模型 Moodle…...

    2024/5/3 6:22:22
  5. IOS开发:键盘弹出调用的方法顺序

    以UITextField的键盘弹出顺序为例:先是[textField becomeFirstResponsder]----------->调用textField的代理事件(textFieldShouldBeginEditing)----------->假如textFieldShouldBeginEditing返回YES,,调用代理事件textFieldDidBeginEditing,那么[textField isFirstRe…...

    2024/4/20 21:07:38
  6. MVC中使用PartialView方法

    要实现类似这样的的功能:在网上找到这样的示例。文章如下: 我们知道,作为Action的响应,最常见的做法是return View();也就是说,返回一个视图。但是如果我们某的操作只是要返回页面的一部分,典型的情况就是,在页面上实现局部的刷新功能。 实现局部刷新功能,以前我们是…...

    2024/4/20 21:07:37
  7. Windows客户端开发简介(三)

    之前的一篇文章里,我简单概要的介绍了一下界面库的知识。既然是跟界面有关,那么必然少不了很多关于绘制的内容。对于Windows开发而言,界面绘制使用的一类API就是所谓的“GDI”。GDI这个东西可有历史了,但是我们就不去追根朔源了。首先,我不能免俗的要先介绍一下它的全称:…...

    2024/5/3 0:09:51
  8. Qt软键盘——解决Qt例子输入失败的问题

    最近做嵌入式UI,在触摸屏上输入时需要一个软键盘,去找Qt示例时,发现有一个例子example/tools/inputpanel,我安装的版本没有这个例子,于是我就以“example/tools/inputpanel”为关键词搜索了一下,发现了在这个地方有:http://doc.qt.io/qt-4.8/qt-tools-inputpanel-exampl…...

    2024/4/21 0:09:29
  9. MVC PartialView 方式实现点击加载更多

    <table id="MovieListing"></table><div><button id="btnShowMore">显示更多</button> </div> <form><input type="hidden" id="pIndex" name="pIndex" value="0" …...

    2024/4/21 0:09:29
  10. 【转载】Moodle的分析---文件结构

    这是对Moodle学习的第一次关于文件结构的分析,接下来还将要有更多的东西拿来记录,记录项目的运行情况。并将实时更新最新的研究情况。 l admin:主要用于moodle站点管理的代码 l auth:用于moodle用户认证的组件模块 l backup:包含创建一个备份或者…...

    2024/4/21 0:09:27
  11. 客户端开发与服务器端开发的区别

    ...

    2024/4/21 0:09:26
  12. 4*4矩阵键盘的设计

    本次设计是利用单片机技术,采用利用键盘产生中断的思想,利用中断查询的方法,用汇编语言设计了一个44的键盘模块,键盘有值0--F时产生中断,用数码管显示相应的按键值。汇编程序如下:;*********************************************************; 0 1 …...

    2024/4/20 2:14:11
  13. Ubuntu 14.04 LTS 安装Moodle(开源网络课程网站)

    1.首先搭建 LAMP 服务器 2.安装并开启 cURL扩展sudo apt-get install php5-curl 3.安装启用 xmlrpc扩展sudo apt-get install php5-xmlrpc 4.安装启用 intl扩展sudo apt-get install php5-intl 5.重启 apache2 sudo serviceapache2 restart...

    2024/4/21 0:09:25
  14. iOS新闻客户端开发教程1--项目框架搭建

    经过2个多月的Objective-C基础知识学习,终于迎来了实战了,本教程将系列介绍使用Objective-C开发一款仿网易新闻客户端App。下面将介绍Xcode项目框架搭建,包括以下内容:开发环境安装 MVVM框架模型介绍 搭建项目框架开发环境安装1.安装Mac上开发工具Xcode Xcode:https://itu…...

    2024/4/21 0:09:24
  15. 腾讯游戏客户端开发面经(电话面试)

    本人在3.12号接到腾讯电话面试,不幸在3.14收到拒信。现在对电话面试内容作业总结 1.首先他会问你一些跟简历上的与技术无关的东西,比如你的简历上写得自我评价(比如我写得热爱编程。。要我用经历说明我怎么个热爱编程法,有过什么实践,然后服不服从调配),然后谈一谈项目 …...

    2024/4/21 0:09:22
  16. 使用MVC框架中要注意的问题:何时使用PartialView(部分类)方法

    我们知道,作为Action的响应,最常见的做法是Return View();也就是说,返回一个视图。但是如果我们某的操作只是要返回页面的一部分,典型的情况就是,在页面上实现局部的刷新功能。实现局部刷新功能,以前我们是自己用javascript,解析json数据来实现的。下面有一个例子 Acti…...

    2024/4/21 0:09:21
  17. 51单片机的4x4矩阵键盘扫描例程(C51)

    //4x4矩阵键盘扫描例程(C51)//使用P0口上的LED灯显示4x4键盘扫描得到的键值////广西民大物电学院 李映超 2010.4.19#include <reg52.h> //52系列单片机头文件#define uchar unsigned char#define uint unsigned int #define key_4x4_port P3 …...

    2024/4/21 0:09:20
  18. Windows系统XAMPP安装Moodle教程

    一.安装工具下载: 系统环境:Operating System: Windows 10 Enterprise 64-bit (10.0, Build 17134) 集成软件:XAMPP Version: 7.2.10,XAMPP主要就是搭建apache服务器和mysql数据库。XAMPP(Apache+MySQL+PHP+PERL)是一个功能强大的建站集成软件包。当然你也可以使用easy P…...

    2024/4/21 0:09:20
  19. 给windows客户端开发新人的一点建议

    看到论坛上很多新人想从事windows开发,却不知从何学起,本ID是过来人,知道摸索,迷茫的痛苦,趁着周末,也就随便说两句。毫无疑问,windows是太阳系里面最值得学习的操作系统,windows的影响力,至今没有任何系统可以代替。但是windows也是最复杂的操作系统,找到一条入门之…...

    2024/4/21 0:09:19
  20. MVC利用JQuery异步加载PartialView

    Javascript:$("#indexList").load(/Test/Index,{"id":"1","name":"测试"},function (result){//成功后执行。} ); 或者 $.ajax({type : post,url : /Test/Index,data : { "id" : "1", "name&quo…...

    2024/4/27 1:29:31

最新文章

  1. 芯片验证 | SystemVerilog使用简介

    内容来自白皮书&#xff0c;仅做复习记录&#xff01; SystemVerilog是一种面向对象的编程语言。与非面向对象的编程语言&#xff08;如C语言&#xff09;相比&#xff0c;面向对象语言最重要的特点是所有的功能都要在类&#xff08;class&#xff09;里实现。 A.1 结构体的使…...

    2024/5/3 6:26:01
  2. 梯度消失和梯度爆炸的一些处理方法

    在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言&#xff0c;在此感激不尽。 权重和梯度的更新公式如下&#xff1a; w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...

    2024/3/20 10:50:27
  3. Jmeter02-1:参数化组件CVS

    目录 1、Jmeter组件&#xff1a;参数化概述 1.1 是什么&#xff1f; 1.2 为什么&#xff1f; 1.3 怎么用&#xff1f; 2、Jmeter组件&#xff1a;参数化实现之CSV Data Set Config(重点中重点) 2.1 是什么&#xff1f; 2.2 为什么&#xff1f; 2.3 怎么用&#xff1f; …...

    2024/5/1 13:53:24
  4. 设计模式:组合模式

    定义 组合模式(Composite Pattern)是一种结构型设计模式,它允许你将对象组合成树形结构来表示“部分-整体”的层次结构。组合模式使得客户端可以统一对待单个对象和组合对象。 应用场景 组合模式适用于以下场景: 表达对象的部分-整体层次结构:当你想要表示对象的部分-整…...

    2024/5/1 8:37:43
  5. 【外汇早评】美通胀数据走低,美元调整

    原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...

    2024/5/1 17:30:59
  6. 【原油贵金属周评】原油多头拥挤,价格调整

    原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...

    2024/5/2 16:16:39
  7. 【外汇周评】靓丽非农不及疲软通胀影响

    原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...

    2024/4/29 2:29:43
  8. 【原油贵金属早评】库存继续增加,油价收跌

    原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...

    2024/5/2 9:28:15
  9. 【外汇早评】日本央行会议纪要不改日元强势

    原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...

    2024/4/27 17:58:04
  10. 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响

    原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...

    2024/4/27 14:22:49
  11. 【外汇早评】美欲与伊朗重谈协议

    原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...

    2024/4/28 1:28:33
  12. 【原油贵金属早评】波动率飙升,市场情绪动荡

    原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...

    2024/4/30 9:43:09
  13. 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试

    原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...

    2024/4/27 17:59:30
  14. 【原油贵金属早评】市场情绪继续恶化,黄金上破

    原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...

    2024/5/2 15:04:34
  15. 【外汇早评】美伊僵持,风险情绪继续升温

    原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...

    2024/4/28 1:34:08
  16. 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势

    原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...

    2024/4/26 19:03:37
  17. 氧生福地 玩美北湖(上)——为时光守候两千年

    原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...

    2024/4/29 20:46:55
  18. 氧生福地 玩美北湖(中)——永春梯田里的美与鲜

    原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...

    2024/4/30 22:21:04
  19. 氧生福地 玩美北湖(下)——奔跑吧骚年!

    原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...

    2024/5/1 4:32:01
  20. 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!

    原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...

    2024/4/27 23:24:42
  21. 「发现」铁皮石斛仙草之神奇功效用于医用面膜

    原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...

    2024/4/28 5:48:52
  22. 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者

    原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...

    2024/4/30 9:42:22
  23. 广州械字号面膜生产厂家OEM/ODM4项须知!

    原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...

    2024/5/2 9:07:46
  24. 械字号医用眼膜缓解用眼过度到底有无作用?

    原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...

    2024/4/30 9:42:49
  25. 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...

    解析如下&#xff1a;1、长按电脑电源键直至关机&#xff0c;然后再按一次电源健重启电脑&#xff0c;按F8健进入安全模式2、安全模式下进入Windows系统桌面后&#xff0c;按住“winR”打开运行窗口&#xff0c;输入“services.msc”打开服务设置3、在服务界面&#xff0c;选中…...

    2022/11/19 21:17:18
  26. 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。

    %读入6幅图像&#xff08;每一幅图像的大小是564*564&#xff09; f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...

    2022/11/19 21:17:16
  27. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...

    win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面&#xff0c;在等待界面中我们需要等待操作结束才能关机&#xff0c;虽然这比较麻烦&#xff0c;但是对系统进行配置和升级…...

    2022/11/19 21:17:15
  28. 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...

    有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows&#xff0c;请勿关闭计算机”的提示&#xff0c;要过很久才能进入系统&#xff0c;有的用户甚至几个小时也无法进入&#xff0c;下面就教大家这个问题的解决方法。第一种方法&#xff1a;我们首先在左下角的“开始…...

    2022/11/19 21:17:14
  29. win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...

    置信有很多用户都跟小编一样遇到过这样的问题&#xff0c;电脑时发现开机屏幕显现“正在配置Windows Update&#xff0c;请勿关机”(如下图所示)&#xff0c;而且还需求等大约5分钟才干进入系统。这是怎样回事呢&#xff1f;一切都是正常操作的&#xff0c;为什么开时机呈现“正…...

    2022/11/19 21:17:13
  30. 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...

    Win7系统开机启动时总是出现“配置Windows请勿关机”的提示&#xff0c;没过几秒后电脑自动重启&#xff0c;每次开机都这样无法进入系统&#xff0c;此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一&#xff1a;开机按下F8&#xff0c;在出现的Windows高级启动选…...

    2022/11/19 21:17:12
  31. 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...

    有不少windows10系统用户反映说碰到这样一个情况&#xff0c;就是电脑提示正在准备windows请勿关闭计算机&#xff0c;碰到这样的问题该怎么解决呢&#xff0c;现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法&#xff1a;1、2、依次…...

    2022/11/19 21:17:11
  32. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...

    今天和大家分享一下win7系统重装了Win7旗舰版系统后&#xff0c;每次关机的时候桌面上都会显示一个“配置Windows Update的界面&#xff0c;提示请勿关闭计算机”&#xff0c;每次停留好几分钟才能正常关机&#xff0c;导致什么情况引起的呢&#xff1f;出现配置Windows Update…...

    2022/11/19 21:17:10
  33. 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...

    只能是等着&#xff0c;别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚&#xff0c;只能是考虑备份数据后重装系统了。解决来方案一&#xff1a;管理员运行cmd&#xff1a;net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...

    2022/11/19 21:17:09
  34. 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?

    原标题&#xff1a;电脑提示“配置Windows Update请勿关闭计算机”怎么办&#xff1f;win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢&#xff1f;一般的方…...

    2022/11/19 21:17:08
  35. 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...

    关机提示 windows7 正在配置windows 请勿关闭计算机 &#xff0c;然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;关机提示 windows7 正在配…...

    2022/11/19 21:17:05
  36. 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...

    钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...

    2022/11/19 21:17:05
  37. 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...

    前几天班里有位学生电脑(windows 7系统)出问题了&#xff0c;具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面&#xff0c;长时间没反应&#xff0c;无法进入系统。这个问题原来帮其他同学也解决过&#xff0c;网上搜了不少资料&#x…...

    2022/11/19 21:17:04
  38. 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...

    本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法&#xff0c;并在最后教给你1种保护系统安全的好方法&#xff0c;一起来看看&#xff01;电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中&#xff0c;添加了1个新功能在“磁…...

    2022/11/19 21:17:03
  39. 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...

    许多用户在长期不使用电脑的时候&#xff0c;开启电脑发现电脑显示&#xff1a;配置windows更新失败&#xff0c;正在还原更改&#xff0c;请勿关闭计算机。。.这要怎么办呢&#xff1f;下面小编就带着大家一起看看吧&#xff01;如果能够正常进入系统&#xff0c;建议您暂时移…...

    2022/11/19 21:17:02
  40. 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...

    配置windows update失败 还原更改 请勿关闭计算机&#xff0c;电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;配置windows update失败 还原更改 请勿关闭计算机&#x…...

    2022/11/19 21:17:01
  41. 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...

    不知道大家有没有遇到过这样的一个问题&#xff0c;就是我们的win7系统在关机的时候&#xff0c;总是喜欢显示“准备配置windows&#xff0c;请勿关机”这样的一个页面&#xff0c;没有什么大碍&#xff0c;但是如果一直等着的话就要两个小时甚至更久都关不了机&#xff0c;非常…...

    2022/11/19 21:17:00
  42. 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...

    当电脑出现正在准备配置windows请勿关闭计算机时&#xff0c;一般是您正对windows进行升级&#xff0c;但是这个要是长时间没有反应&#xff0c;我们不能再傻等下去了。可能是电脑出了别的问题了&#xff0c;来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...

    2022/11/19 21:16:59
  43. 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...

    我们使用电脑的过程中有时会遇到这种情况&#xff0c;当我们打开电脑之后&#xff0c;发现一直停留在一个界面&#xff1a;“配置Windows Update失败&#xff0c;还原更改请勿关闭计算机”&#xff0c;等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢&#xff0…...

    2022/11/19 21:16:58
  44. 如何在iPhone上关闭“请勿打扰”

    Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...

    2022/11/19 21:16:57