目录
一、Apache——阿帕奇简介
1.Apache起源
源于 A Patchy Server,著名的开源Web服务软件
1995发布,1999年基金会——ASF
最新的名称为 “Apache HTTP Server” ——httpd
2.主要特点:
开放源代码、跨平台应用
支持多种网页编程语言
模块化设计 、运行稳定、良好的安全性
3.编译安装的优点:
具有较大的自由度,功能可定制
可及时获得最新的软件版本
普遍适用于大多数Linux版本,便于移植使用
Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩展,将Perl/Python等解释器编译到服务器中。 [2]
Apache HTTP服务器是一个模块化的服务器,源于NCSAhttpd服务器,经过多次修改,成为世界使用排名第一的Web服务器软件。
它可以运行在几乎所有广泛使用的计算机平台上。
准备工作(为虚拟机作个快照,以方便以后换LNMP环境 )
设置好网络,保障能连上外网。(用nmtui设置即可)
所表示内网和外网都能ping通
安装apache
[root@www ~]#yum –y install httpd
确认安装结果
[root@www ~]# ls /etc/httpd/
bin cgi-bin error icons lib man modules
build conf htdocs include logs manual
启动httpd
[root@www ~]# systemctl start httpd
在物理机用浏览器访问虚拟机
添加一个自己编写测试页,确认网页主目录
[root@www ~]# cd /var/www/html
[root@www ~]# vi index.html
<html>
<body>
<title>tyj</title>
This is my homepage.
</body>
</html>
在物理机刷新一下,显示上述网页内容。
httpd服务的目录结构
httpd服务的目录结构主要目录和文件:
服务目录:/etc/httpd/
主配置文件:/etc/httpd/conf/httpd.conf
网页目录:/var/www/html/
执行程序: /sbin/httpd
访问日志: /etc/httpd/logs/access_log
错误日志: /etc/httpd/logs/error_log
-
常用的全局配置参数
- ServerRoot:服务目录
- ServerAdmin:管理员邮箱
- User:运行服务的用户身份
- Group:运行服务的组身份
- ServerName:网站服务器的域名
- DocumentRoot:网页文档的根目录
- Listen:监听的IP地址、端口号
- PidFile:保存httpd进程PID号的文件
- DirectoryIndex:默认的索引页文件
- ErrorLog:错误日志文件的位置
- CustomLog:访问日志文件的位置
- LogLevel:记录日志的级别,默认为warn
- Timeout:网络连接超时,默认为300秒
- KeepAlive:是否保持连接,可选On或Off
- MaxKeepAliveRequests:每次连接最多请求文件数
- KeepAliveTimeout:保持连接状态时的超时时间
- Include:需要包含进来的其他配置文件
二、MySQL数据库概述
MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。
MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型和大型网站的开发都选择 MySQL 作为网站数据库。
MySQL是开源的关系型数据库服务器软件
目前由Oracle公司开发和维护
MySQL的特点
多线程、多用户
基于C/S(客户端/服务器)架构
简单易用、查询速度快
安全可靠
SQL概述
SQL,Structured Query Language,结构化查询语言,是一种数据库查询和程序设计语言,用于存储数据以及查询、更新和管理数据库。结构化查询语句一共有6种,分别如下:
1、数据查询语言。
数据查询语言,即DQL,Data Query Language,用于从数据库中获取数据。该语言为select语句,以及与之配合的where、order by、group by和having等关键字。
2、数据操作语言。
数据操作语言,即DML,Data Manipulation Language,用于对数据库中的表数据进行添加、删除、修改。数据操作语言的关键词是update、insert和delete。
3、事务处理语言。
事务处理语言,即TPL,Transaction Handle Language,主要用于处理事务(事务在MySQL中是一个非常重要的概念,在接下来的文章中我们会进行讲解),关键字有begin、transaction、commit等。
4、数据控制语言。
数据控制语言,即DCL,Data Control Language,主要用于对一些用户进行某些数据库的授权和权限撤销,其关键字有grant、revoke等。
5、数据定义语言。
数据定义语言,即DDL,Data Determination Language,主要用于创建新的表或者删除表,其关键字有create、drop等等。
6、指针控制语言。
指针控制语言在MySQL中不常使用,在这里就不过多介绍了。
安装包为mariadb开头的一系列文件
yum –y install mariadb mariadb-server
确认安装完成
ls /etc/my.cnf
/etc/my.cnf /etc/my.cnf.d
ls /var/lib/mysql
启动数据服务
systemctl start mariadb
密码设置
1.mysqladmin -u root password ‘123456’
2.mysql -u root –p
(输入密码登录)
附:重设MySQL密码方法:
#mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
#mysql -u root mysql
>UPDATE user SET password=password('') WHERE User='root' AND Host='localhost';
>FLUSH PRIVILEGES;
>quit;
#mysqladmin -u root password '123456'
#pgrep -l mysqld_safe ,查到pid再kill -9 pid
mysql -u root -p
MySQL数据基本基本操作
库查看
>show databases;
库打开
>use mysql;
表查看
>show tables;
表打开
>select host,user,password from user;
退出mysql:
>quit
三、LAMP
LAMP指的是什么?
LAMP其实就是Linux + Apache + MySQL + PHP的标准缩写。
“L”指的就是Linux系统,包括:Linux衍生的各种发行版 redhat ,centos,ubntu;
“A”指的是apache,是一个http服务器,也可以叫做web服务器,网站的运行离不开web服务器。其他的web服务器还有nginx和IIS;
“M”指的mysql数据库;
“P”指的是PHP,就是运行在服务器端的脚本语言。
LAMP是一个非常优秀的网站数据库开发平台,是开源免费的自由软件,与JavaEE和ASP.NET架构形成了三足鼎立的竞争态势,是较受欢迎的开源软件网站开发平台。
LAMP有什么优势?
LAMP组合具有简易性、低成本、成本低廉,可定制、易于开发、方便易用,安全和稳定、高安全性、开发速度快和执行灵活等特点,使得其在全球发展速度较快、应用较广,越来越多的企业将平台架构在LAMP之上。不管是否是专业人士,都可以利用LAMP平台工具来设计和架设网站及开发应用程序,目前主流的网站都在使用LAMP作为自己的系统运行平台。
安装PHP软件包2-1
安装主程序
[root@www ~]# yum -y install php
安装开发工具
[root@www ~]# yum –y install php-devel
安装对MySQL支持程序
[root@www ~]# yum –y install php-mysql(在Packages目录中,TAB补全)
root@www ~]# cp /etc/php.ini /etc/php.ini.bak
[root@www ~]# grep -v “^;” /etc/php.ini | grep -v “^$“ (查看生效部分)
[PHP]
engine = On
short_open_tag = On
asp_tags = Off
……
[root@www ~]# vi /etc/php.ini
……
default_charset = "utf-8”
file_uploads = On
upload_max_filesize = 2M
max_file_uploads = 20
post_max_size = 8M
short_open_tag = On
httpd.conf配置调整(CentOS7已把其它支持程序配置文件放到conf.d目录,只在本文件中用 includeoptional加载)
使httpd服务器支持PHP页面解析功能
[root@www ~]# vi /etc/httpd/conf.d/php.conf
……
LoadModule php5_module modules/libphp5.so
AddType php5-script .php
DirectoryIndex index.php index.html
测试LAMP协同工作
测试PHP网页能否正确显示
[root@www ~]# vi /var/www/html/index.php
<?php
phpinfo( );
?>
建立php测试页面
测试PHP网页能否访问MySQL数据库
[root@www ~]# vi /var/www/html/test.php
<?php
$link=mysqli_connect('localhost','root','123456');
if($link) echo "恭喜你,数据库连接成功啦!!";
mysql_close();
?>
[root@www ~]# systemctl start mariadb
[root@www ~]# systemctl start httpd
[root@www ~]# systemctl stop firewalld
[root@www ~]# setenforce 0
四、心得体会
Linux是一门值得深入学习的课程。我们身处网络发达的年代,网络科技发展速度非常之快,所以,不断学习新的知识,接触新的环境,才能更全面地了解网络发展的新趋势。
首先Linux最大的特点就是其开源性,这一点是十分难得的,这也是它能够存在到现在的原因之一,随着IT从业人员越来越多,理论上会有更多的人使用Linux,可以肯定,Linux在以后很长时间不会消失。其次Linux简单,占内存少,特别是对于程序开发人员来说很方便,如果说windows的成功在于其方便用户的窗口管理界面,那么Linux的成功就在于用最少的资源最短的时间实现了所有功能,这也是符合人类进化的,相信以后节能问题会日益突出。日常学习Linux中三大法宝是学习效率,掌握程度,熟悉操作。熟悉并掌握安装Linux,安装是学习的前提,目前较常见的安装方法有二种: 硬盘安装及光盘安装,清楚了解安装Linux应注意的有关问题,掌握硬件配置,如显卡,声卡,网卡等,熟悉系统的基本操作,Linux的图形界面直观,操作简便,多加上机练习就可熟悉操作,在Linux下学习办公软件等常用软件,了解了恶意代码基础知识,包括计算机病毒的组成、特性、分类,反病毒代码的查杀,恶意代码主机管理装置在Linux客户端的安装及常用的功能、威胁处置常见问题排查等知识,还有恶意代码主机装置在windows客户端的相关功能。总之通过这次对Linux操作系统的学习,我真的学习到了不少知识,从以前的对Linux系统一无所知到现在也深刻的认识到了Linux系统的好处,而且还可以在Linux系统中做一些基本的操作,这次对Linux操作系统的学习我真的收获不少,希望以后可以为我们的软件业献出我的微薄之力,很多事情都是从无到有,从零到一,虽然我的本专业不占优势,但是我相信勤能补拙,以我的勤奋和踏实,必定能干好这一行,希望我能通过学习Linux能更好的展示自我、实现自我的机会。