linux 下的web服务器,软件使用的是apache; lamp 模式是一组linux+apache+mysql+php/python/perl 常用来搭建动态网站或者服务器的开源软件,本身都是各自独立的程序,因为常被放在一起拥有越来越高的兼容度,共同组成一个强大的web应用程序平台。

HTTP(超文本传输协议)是互联网上应用最为广泛的一种网络协议;所有的www文件必须准守这个标准;是应用级的协议,主要用于分布式、协作的信息系统;http和https分别使用80、443端口 ,https是加密链接访问;Internet上,HTTP通信往往发生在TCP/IP连接上,其默认的端口为80,也可以使用其他端口。 

http的运行原理:

1、Web浏览器使用HTTP命令向一个特定的服务器发出Web页面请求。

2、若该服务器在特定端口(通常是TCP 80端口)处接收到Web页面请求后,就发送一个应答并在客户和服务器之间建立连接。

3、服务器Web查找客户端所需文档,若Web服务器查找到所请求的文档,就会将所请求的文档传送给Web浏览器。若该文档不

     存在,则服务器会发送一个相应的错误提示文档给客户端。

4、Web浏览器接收到文档后,就将它显示出来。

5、当客户端浏览完成后,就断开与服务器的连接。

在开始搭建http服务,先来了解http的配置文件主要路径以及文件里面一些参数的含义:

1.apache 的所有配置文件存放路径:

2. apache 的主配置文件:

    apache的安装绝对路径:

    侦听端口号:

    服务的用户和组:

    服务的错误发送邮箱:

    网站默认放置路径(可以修改路径):

    目录存放位置:, 默认目录改写与上面一条一起修改;

    网页默认读取的目录:

3. 网页默认发布目录:/var/www/html/index.html

开始以下实验每做一次实验需要还原回默认设置,否则修改太多都不知道自己哪里出问题!

1.配置好网络以及yum源,安装http,开启http服务;

   ###安装http服务;

      ####启动http服务;设置开机自启动;

  ####将http服务在防火墙开启;

    

2.浏览器测试测试,默认网页为redhat测试网页;

3修改默认发布网页;

http服务中,网站默认的存放路径在/var/www/html/目录下编辑index.html文件;

     

systemctl    restart    httpd    ####重新启动httpd服务; 

 在浏览器里面输入我们服务器的ip就会看见我们编辑的内容:

4.修改默认发布文件优先级

/etc/httpd/conf/httpd.conf文件编辑; DirectoryIndex  后面那个文件在前优先读取,如果前面不存在则读取后面文件

浏览器测试·

5.修改默认发布路径·:

创建默认发布目录:mkdir   /westos/html    -p

修改selinux安全值问题

修改发布目录的权限为755

修改配置文件:/etc/httpd/conf/httpd.conf

浏览器测试

6.修改http的默认80端口为8080端口;

/etc/httpd/conf/httpd.conf文件默认端口为80端口

防火墙添加http服务的8080端口,重新加载:

测试:(记得ip地址后面需要添加8080端口号)

3.apche 的虚拟主机设置

一个物理服务器提供多个站点,使用虚拟主机需要先关闭中心主机;实现虚拟主机由三种方法如下:

①基于不同的ip实现不同的虚拟主机

②基于不同的port实现不同的虚拟主机

③基于不同的主机名实现不同的虚拟主机

创建虚拟主机发布目录

mkdir  /var/www/html/virtual/new/html /  -pv

mkdir  /var/www/html/virtual/new/html/  -pv

编辑默认发布网页

编辑配置文件/etc/httpd/conf.d/

浏览器测试

4.设置访问认证

a.设定其他用户访问权限:允许所有人进行访问,但不包括ip为192.168.88.133的客户端;

192.168.88.133客户端测试:

b.禁止所有人进行访问,但不包括192.168.88.133

c.新建用户并且进行加密:

查看用户生成的密钥

然后对默认配置文件进行设置:vim  /etc/httpd/conf.d/default.conf

重新启动服务,在浏览器重新访问:

 5.安装php服务及其插件

还原之前实验所做的设置:

vim  /etc/httpd/conf.d/default.conf     编辑默认配置文件还原配置:

在默认的目录下新建php文件:

vim  /var/www/html/index.php

安装php服务:

重新启动httpd服务,在/etc/httpd/conf.d/目录下产生php.conf的文件

在浏览器重新访问:

PHP访问网页数据库:

1.将phpMyAdmin-3.4.0-all-languages.tar.bz2软件压缩包下载到/var/www/html/目录下并将其解压;

2.将解压包改名为mysql,后面访问需要用到该目录名,太长不方便我们记忆,而且浪费太多时间

3.进入mysql目录下,查找需要进入数据库的授权码

4.标记的部分为授权码,将授权码复制,进入config.inc.php文件中,粘贴授权码

###为了方便我将解压包里面的文件改名为config.inc.php;授权码粘贴在如下位置;

5.保存退出,重新启动httpd服务,然后在浏览器里面输入192.168.88.132/mysql (服务器ip/解压包名)

####底下显示缺少缺少什么扩展,我们可以不用管,不影响数据库的使用;

6.输入用户以及密码,可以进入数据库进行操作;

7.问题:如不能进入页面,查看php是否支持数据库;是否安装php-mysql的软件;

php -m  ###查看php 支持那些类型软件

yum list installed | grep php  查看安装那写软件,如果没有安装的php-mysql进行安装;

 

 

 

网页加密访问

1.一般情况下网页访问的是http服务.而登录类型网页访问的是https服务;

https服务需要安装软件mod_ssl: yum install -y mod_ssl

2.安装https时会在该目录下多出配置文件ssl.conf;

系统默认的安全认证:输入:https://www.westos.com

3.自己制作认证证书;虽然我们安装了https服务,还是缺少插件crypto-utils

插件安装完成,以后可以对网页进行加密:

    

对文件进行加密,以下是加密过程:

显示生成的钥匙和锁会放在什么地方;

选择生成的密钥长度字节:一般建议选择中间长度,太多容易破解,太长加密时间太长;

显示的是密钥生成的进度,在此时阶段会发生卡顿现象,我们需要在另外虚拟机里面输入内容;

是否让我们将加密信息发送特定机构进行注册;我们选择否;

最后一步填写加密的地区还有公司地址等,点击下一步完成;最后在shell中会显示密钥和锁的信息;

5.编辑配置文件,将密钥与锁的信息告诉系统:

vim   ssl.conf   ####编辑加密配置文件

systemctl restart httpd    ###重新启动系统

浏览器测试:https://www.westos.com

 

 

设置HTTPS地址转换;

1.创建虚拟机网页访问的目录,预设为443端口虚拟机;

2.编辑访问默认的文件 index.html

3.在/etc/httpd/conf.d/目录下创建虚拟机配置文件,设置访问相关设定:

4.在/etc/hosts文件添加访问的地址 login.westos.com

5.在/etc/http/conf.d/目录下创建80端口的默认配置文件:

vim   default.conf      ####编辑配置文件

 

 

HTTP服务添加c++语言脚本: cgi

1.安装 httpd-manual.noarch软件;

2.安装完成重新启动系统,目录下多出文件manual.conf

3.在/var/www/html/目录下创建cgi目录,编辑默认文件index.cgi:

4.给cgi文件添加执行权限:重新启动·服务

启动运行cgi脚本;

5.浏览器输入:192.168.88.146/manual#查看cgi相关信息

浏览器测试cgi脚本:192.168.88.146/index.cgi   脚本不会执行

 

测试另外的脚本;

 

1.vim /etc/http/conf/httpd.conf

 

2.重新启动系统:systemctl  restart  httpd.service 

 

3.查看cfi 目录的标签,以及安全上下文;

4.测试:

Logo

更多推荐