当前位置: 首页 > news >正文

【LINUX操作系统】搭建web网络服务器

题目:

请给openlab搭建web网站

1.基于域名www.openlab.com可以访问网站内容为 welcome to openlab

2.给该公司创建三个子界面分别显示学生信息,教学资料和缴费网站,基于www.openlab.com/data网站访问教学资料 www.openlab.com/money网站访问缴费网站。

3.要求

(1)学生信息网站只有song和tian两人可以访问,其他用户不能访问。

(2)访问缴费网站实现数据加密基于https访问。

第一步:准备工作

[root@master ~]# systemctl status firewalld    #查看防火墙状态
[root@master ~]# getenforce                    #查看selinux状态
[root@master ~]# yum install nginx mod_ssl -y  #下载安装包
[root@master ~]# systemctl enable --now nginx  #重新启动服务
[root@master ~]# mkdir -p /www/openlab         #新建目录
[root@master ~]# mkdir /www/openlab/data       #新建子目录
[root@master ~]# mkdir /www/openlab/student
[root@master ~]# mkdir /www/openlab/money
[root@master ~]# tree /www                     #查看创建结果
[root@master ~]# echo "welcome to openlab" > /www/openlab/index.html    #将内容写入网页文件中
[root@master ~]# echo "data" > /www/openlab/data/index.html
[root@master ~]# echo "student" > /www/openlab/student/index.html
[root@master ~]# echo "money" > /www/openlab/money/index.html
[root@master ~]# tree /www

       在windows中找到文件,将自己电脑的IP地址和域名写入其中后保存,就可以在自己电脑中用自己的IP地址和域名访问了。

配置文件格式一定:【主机的IP地址      域名】

第二步:创建www.openlab.con网站

[root@master ~]# vim /etc/nginx/nginx.conf   #编辑配置文件 
server {listen       80;                     #基于80端口server_name  www.openlab.com;        #域名root         /www/openlab;           #该文件所在目录}
[root@master ~]# systemctl restart nginx     #重启服务
[root@master ~]# nginx -t                    #检查配置文件是否有错误

 

测试:直接用域名访问就行

第三步:创建教学资料网站www.openlab.com/data

[root@master ~]# vim /etc/nginx/nginx.conf           #编辑配置文件
server {listen       80;                       server_name  www.openlab.com;root         /www/openlab;location     /data  {                        #子网站dataalias  /www/openlab/data;       #data网站所在目录index  index.html  index.htm;   #可以访问的文件类型}}
[root@master ~]# systemctl restart nginx             #重启服务
[root@master ~]# nginx -t                            #检查配置文件中是否有错误

测试:直接用域名访问

第四步:创建学生信息子网站www.openlab.com/student

[root@master ~]# useradd song                                    #创建用户song[root@master ~]# useradd tian                                    #创建用户tian[root@master ~]# passwd song                                     #交互式修改密码  
更改用户 song 的密码 。
新的密码: 123
无效的密码: 密码少于 8 个字符
重新输入新的密码: 123
passwd:所有的身份验证令牌已经成功更新。[root@master ~]# echo "123" | passwd --stdin tian > /dev/null    #非交互式修改密码[root@master ~]# htpasswd -c /etc/nginx/passwd song              #给用户
New password:123456 
Re-type new password:123456[root@master ~]# htpasswd /etc/nginx/passwd tian
New password:123456 
Re-type new password:123456[root@master ~]# vim /etc/nginx/nginx.confserver {listen       80;                        server_name  www.openlab.com;root         /www/openlab;location     /data  {alias  /www/openlab/data;index  index.html  index.htm;}location     /student  {alias  /www/openlab/student;index  index.html  index.html;auth_basic  "Please input password";auth_basic_user_file  /etc/nginx/passwd;}}[root@master ~]# systemctl restart nginx
[root@master ~]# nginx -t

试:域名测试(两个用户都可以测试,如果使用另外一个需要将浏览器的缓存清理,继续输入域名访问即可。)

第五步:创建缴费子网站www.openlab.com/money

[root@master ~]# openssl genrsa -aes128  2048  >  /etc/nginx/money.key     #在/etc/nginx目录下制作整数所用的私钥文件money.key
Enter pass phrase:123456                                       #加密私钥密码123456
Verifying - Enter pass phrase:123456                           #确认[root@master ~]# openssl req -utf8 -new -key /etc/nginx/money.key -x509 -days 365 -out  /etc/nginx/money.crt                                           #制作证书
Enter pass phrase for /etc/nginx/money.key:123456              #加密私钥密码123456
Country Name (2 letter code) [AU]:86                           #国家代码
State or Province Name (full name) [Some-State]:shan'xi        #省份
Locality Name (eg, city) []:xi'an                              #城市
Organization Name (eg, company) [Internet Widgits Pty Ltd]:openlab #公司
Organizational Unit Name (eg, section) []:dev                  #部门     
Common Name (e.g. server FQDN or YOUR name) []:master          #主机名
Email Address []:123456@qq.com                                 #邮箱[root@master ~]# cp /etc/nginx/money.key /etc/nginx/money.key.org #将私钥拷贝并失效 [root@master ~]# openssl rsa -in /etc/nginx/money.key.org -out /etc/nginx/money.key 
Enter pass phrase for /etc/nginx/money.key.org:123456          #私钥密码[root@master ~]# vim /etc/nginx/nginx.confserver {listen       80;                                       #监听80端口号server_name  www.openlab.com;                          #域名root         /www/openlab;                             #默认网页目录地址      location     /data  {alias  /www/openlab/data;                  index  index.html  index.htm;}location     /student  {alias  /www/openlab/student;             #绝对路径存储目录index  index.html  index.html;auth_basic  "Please input password";     #加密网页验证时的提示信息auth_basic_user_file  /etc/nginx/passwd; #加密网页使用的密码验证文件 }}server {listen        443 ssl http2;                           #监听443端口号server_name   www.openlab.com;                         #域名location      /money   {                               #子网站 alias  /www/openlab/money;               #绝对路径网站根目录index  index.html  index.htm;     }ssl_certificate "/etc/nginx/money.crt";                #证书存储目录ssl_certificate_key "/etc/nginx/money.key";            #密钥存储目录    }[root@master ~]# systemctl restart nginx
[root@master ~]# nginx -t

试:域名测试

http://www.lryc.cn/news/594891.html

相关文章:

  • Softhub软件下载站实战开发(二十):Docker部署全攻略
  • Golang在Web开发中的应用
  • 网络协议(四)网络层 路由协议
  • uni-app 开发小程序项目中实现前端图片压缩,实现方式
  • uniapp使用uni-ui怎么修改默认的css样式比如多选框及样式覆盖小程序/安卓/ios兼容问题
  • 云原生周刊:K8s 中的后量子密码学
  • 【iOS】锁[特殊字符]
  • 类似腾讯会议的私有化音视频会议软件,BeeWorks Meet
  • MYSQL:数据库约束
  • Mysql(存储过程)
  • JVM 类加载过程笔记
  • MySQL 主从结构停库后重启操作及常见错误处理方法
  • javaSE(从0开始)day13
  • Ubuntu 22.04 安装 MySQL 8.0 完整步骤文档
  • MySQL 核心知识点梳理(3)
  • MySQL二进制包安装
  • 图论(2):最短路
  • 基于deepseek的LORA微调
  • 【深度学习新浪潮】如何系统性地学习扩散模型?
  • 分布式定时任务系列13:死循环是任务触发的银弹?
  • uniapp 输入时动态修改值(如含单位)光标被强制移至末尾
  • docker 软件bug 误导他人 笔记
  • 装饰器模式分析
  • java解析nc气象数据
  • numpy库的基础知识
  • 用Dify构建气象智能体:从0到1搭建AI工作流实战指南
  • React-useEffect的闭包陷阱(stale closure)
  • react 录音功能
  • 《Linux 环境下 Nginx 多站点综合实践:域名解析、访问控制与 HTTPS 加密部署》​
  • 大模型——Prompt 优化还是模型微调