Web服务器实验案例

目录

关闭或放行防火墙和selinux

1 搭建静态网站

2 建立两个基于ip地址访问的网站

思路:

简单配置

编写httpd额外文件

3 建立两个基于不同端口访问的网站

思路

创建文件(与之前一致)

额外文件配置

4 基于虚拟目录和用户控制的web网站

思路

设置用户密码

创建目录及页面

编写配置文件

额外配置文件(必须制定目录及虚拟主机)

关闭或放行防火墙和selinux

1 搭建静态网站

[root@localhost ~]# echo "this is static" >> /var/www/html/index.html

2 建立两个基于ip地址访问的网站

要求:访问 ip 地址为 100 时,访问的是 100 网页
访问 ip 地址为 200 时,访问 200 网页

思路:

创建 2 ip
创建 2 ip 对应的目录
使用 httpd 的额外文件来编写配置文件
创建虚拟主机

简单配置

nmcli connection modify ens33 +ipv4.addresses 192.168.27.100/24
nmcli connection modify ens33 +ipv4.addresses 192.168.27.200/24
nmcli connection up ens33
mkdir -pv /WWW/ip/100
mkdir -pv /WWW/ip/200
echo "this is 100" > /WWW/ip/100/index.html
echo "this is 200" > /WWW/ip/200/index.html
配置httpd虚拟主机
虚拟主机样例文件是/usr/share/doc/httpd-2.4.6/httpd-vhosts.con
[root@localhost ~]# find / -name "*vhosts.conf"
/usr/share/doc/httpd-2.4.6/httpd-vhosts.conf

编写httpd额外文件

[root@localhost ~]# more /etc/httpd/conf.d/vhosts.conf
<VirtualHost 192.168.27.100:80>
DocumentRoot /WWW/ip/100
ServerName 192.168.27.100
</VirtualHost>
<VirtualHost 192.168.27.200:80>
DocumentRoot /WWW/ip/200
ServerName 192.168.27.200
</VirtualHost>
给目录给予访问权限
<Directory "/WWW/ip">
AllowOverride None
Require all granted
</Directory>

3 建立两个基于不同端口访问的网站

思路

ip 已经创建
创建两个不同端口的目录
修改之前的额外文件

创建文件(与之前一致)

额外文件配置

listen 81
listen 82
<VirtualHost 192.168.27.100:81>
DocumentRoot /WWW/port/81
ServerName 192.168.27.100
</VirtualHost>
<VirtualHost 192.168.27.100:82>
DocumentRoot /WWW/port/82
ServerName 192.168.27.100
</VirtualHost>
<Directory "/WWW/port">
AllowOverride None
Require all granted
</Directory>

4 基于虚拟目录和用户控制的web网站

思路

设置用户和密码
创建页面文件目录
编写配置文件

设置用户密码

htpasswd -c /etc/httpd/mymima xiaoming
htpasswd -c /etc/httpd/mymima xiaohong

创建目录及页面

mkdir /usr/local/mysecret
echo "this is mysecret" > /usr/local/mysecret/index.html

编写配置文件

额外配置文件(必须制定目录及虚拟主机)

[root@localhost ~]# more /etc/httpd/conf.d/vhosts2.conf
<Directory "/usr/local">
AuthType Basic
AuthName "please login"
AuthUserFile /etc/httpd/mymima
Require user xiaohong
</Directory>
<VirtualHost 192.168.27.100:80>
DocumentRoot "/usr/local/mysecret"
ServerName 192.168.27.100
</VirtualHost>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SSL(Secure Sockets Layer)是一种安全通信协议,用于保护在互联网上进行的数据传输安全。Web SSL认证是通过在服务器和客户端之间建立一个加密通道来实现数据传输的安全性。 SSL认证过程包括以下步骤: 1. 浏览器向服务器发送请求,请求建立SSL连接。 2. 服务器将自己的公钥发送给浏览器。 3. 浏览器验证服务器证书是否合法,如果合法则向服务器发送随机数。 4. 服务器使用自己的私钥加密随机数,并将加密后的随机数发送给浏览器。 5. 浏览器使用服务器的公钥解密随机数,并使用该随机数生成对称密钥。此后,服务器和浏览器的通信都使用该对称密钥进行加密。 下面是一个基于Node.js的SSL认证实验案例: 1. 生成自签名证书 使用openssl命令生成自签名证书。在终端中输入以下命令: ``` openssl req -newkey rsa:2048 -nodes -keyout key.pem -x509 -days 365 -out cert.pem ``` 其中,key.pem是生成的私钥文件,cert.pem是生成的证书文件。 2. 编写Node.js服务器代码 创建一个Node.js文件,将以下代码复制到文件中: ``` const https = require('https'); const fs = require('fs'); const options = { key: fs.readFileSync('key.pem'), cert: fs.readFileSync('cert.pem') }; https.createServer(options, (req, res) => { res.writeHead(200); res.end('Hello World!'); }).listen(3000); ``` 该代码使用https模块创建一个HTTPS服务器,并使用之前生成的私钥和证书文件作为参数。 3. 运行服务器 在终端中运行以下命令启动服务器: ``` node server.js ``` 4. 在浏览器中访问 在浏览器中输入以下URL地址:https://localhost:3000,如果一切正常,将看到“Hello World!”的字样。 以上就是基于web的SSL认证过程及实验案例

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值