Linux 之 apache

一、安装apache并测试其可以正常显示

[root@jane1 ~]# yum install httpd -y             ##安装阿帕奇
[root@jane1 ~]# systemctl start httpd           ##打开阿帕奇
[root@jane1 ~]# netstat -antlupe | grep httpd                      ##查看阿帕奇端口
tcp6       0      0 :::80                   :::*                    LISTEN      0          170715     3764/httpd          
[root@jane1 ~]# cd /var/www/html/                    ##配置目录
[root@jane1 html]# systemctl stop firewalld       ##关闭防火墙

这里写图片描述

[root@jane1 html]# vim index.html                    ##配置文件
写入:
<h1>hello</h1>                   ##   <h1>  </h1>  字体大小   
在火狐浏览器输入 172.25.254.129      ##可以看到内容  

这里写图片描述
这里写图片描述

[root@jane1 html]# vim test.html                  ##重新写一个阿帕奇文件
写入:
test's page
在火狐浏览器输入 172.25.254.129/test.html     ##可以看到内容

这里写图片描述
这里写图片描述

二、默认端口的修改

[root@jane1 html]# vim /etc/httpd/conf/httpd.conf     ##进去查看端口并改成8080
[root@jane1 html]# systemctl restart httpd
[root@jane1 html]# netstat -antlupe | grep httpd
tcp6       0      0 :::8080                 :::*                    LISTEN      0          178260     4022/httpd     
                 ##改好之后,在火狐输入172.25.254.129:8080     
[root@jane1 html]# vim /etc/httpd/conf/httpd.conf        ##进去改8080为80
[root@jane1 html]# systemctl restart httpd

这里写图片描述
这里写图片描述
这里写图片描述

三、默认发布目录的修改

[root@jane1 html]# mkdir /westos/html -p   ##权限建立
[root@jane1 html]# cd /westos/html/
[root@jane1 html]# vim index.html     ##在第一行写入
[root@jane1 html]# vim /etc/httpd/conf/httpd.conf  ##注释掉119行,在120行写入
[root@jane1 html]# systemctl restart httpd     ##进入火狐172.25.254.129

这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

[root@jane1 html]# vim test.html  ##在第一行写入
[root@jane1 html]# vim /etc/httpd/conf/httpd.conf   ##在123行插入写
[root@jane1 html]# systemctl restart httpd        ##进入火狐172.25.254.129
[root@jane1 html]# ls
index.html   test.html
[root@jane1 html]# pwd
/westos/html

这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

四、默认发布文件的修改

    默认发布文件可以有多个,在配置文件里修改,其按顺序执行,即如果前面的文件不存在,则访问后面的。
[root@jane1 html]# mkdir linux
[root@jane1 html]# ls
index.html test.html linux
[root@jane1 linux]# cd linux
[root@jane1 linux]# ls
[root@jane1 linux]# vim index.html      ##写入123
[root@jane1 linux]# vim test.html       ##写入456
[root@jane1 linux]# vim /etc/httpd/conf/httpd.conf
[root@jane1 linux]# systemctl restart httpd
在火狐输入172.25.254.129/linux    ##看到的是456 test文件的内容

这里写图片描述
这里写图片描述
这里写图片描述

五、apache的访问控制

【配置基于用户的身份验证】
1.设定其他用户的访问限制
   允许所有人访问
[root@jane1 ~]# systemctl stop firewalld
[root@jane1 ~]# systemctl start httpd
[root@jane1 ~]# vim /etc/httpd/conf/httpd.conf    ##注释掉之前做的,恢复原有的。
[root@jane1 ~]# systemctl restart httpd          ##火狐测试:172.25.254.129 
[root@jane1 ~]# cd /var/www/html/
[root@jane1 html]# mkdir westos
[root@jane1 html]# ls
index.html  test.html  westos
[root@jane1 html]# cd westos/

这里写图片描述
这里写图片描述

[root@jane1 westos]# vim index.html
   <h1>westos's page</h1>
[root@jane1 westos]# vim /etc/httpd/conf/httpd.conf
     119 DocumentRoot "/var/www/html"
     120 #DocumentRoot "/westos/html"
     121 <Directory "/var/www/html/westos">
     122         Order Allow,Deny    ##优先级,谁在前,先读谁
     123         Allow from ALL       ##都可以
     124         Deny from 172.25.254.66   ##不可以,真机IP
     125 </Directory>
[root@jane1 westos]# systemctl restart httpd
用真机网页浏览:Forbidden   (172.25.254.129/westos)
用虚拟机网页浏览:westos's page

这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

禁止所有人访问
[root@jane1 westos]# vim /etc/httpd/conf/httpd.conf
<Directory "/var/www/html/westos">
        Order Deny,Allow     ##先读黑名单
        Allow from 172.25.254.66   ##只有这个IP可以访问
        Deny from All
</Directory>
[root@jane1 westos]# systemctl restart httpd
用真机网页浏览:westos's page   (172.25.254.129/westos)
用虚拟机网页浏览:Forbidden

这里写图片描述
这里写图片描述

2.允许指定用户访问,且需要认证
[root@jane1 westos]# cd /etc/httpd/
[root@jane1 httpd]# ls
conf  conf.d  conf.modules.d  logs  modules  run
[root@jane1 httpd]# htpasswd -cm apacheuser admin  ##-cm  新建
[root@jane1 httpd]# cat apacheuser 
admin:$apr1$PNmyi1lp$eJrtsJduLXCu6tBV1YiVs/
[root@jane1 httpd]# htpasswd -cm apacheuser tom
[root@jane1 httpd]# htpasswd -m apacheuser admin     ##注意添加用户时,-m,否则会覆盖

这里写图片描述

[root@jane1 httpd]# vim /etc/httpd/conf/httpd.conf
127 <Directory "/var/www/html/westos">
128         AuthUserFile /etc/httpd/apacheuser   ##读取的认证文件
129         AuthName "Please input user and password !!"  ##访问页面
130         AuthType basic    ##基本的认证方式
131         Require user admin  ##只允许admin用户访问
            (Require valid-user)   ##允许文件的所有用户
132 </Directory>
[root@jane1 httpd]# systemctl restart httpd

这里写图片描述
这里写图片描述
这里写图片描述

[root@jane1 httpd]# vim /etc/httpd/conf/httpd.conf
127 <Directory "/var/www/html/westos">
128         AuthUserFile /etc/httpd/apacheuser 
129         AuthName "Please input user and password !!"  
130         AuthType basic    
131         Require user admin  
132         Require valid-user   ##允许文件的所有用户
133 </Directory>
[root@jane1 httpd]# systemctl restart httpd

这里写图片描述
这里写图片描述
这里写图片描述

六、apache的虚拟主机

[kiosk@foundation29 ~]$ su - root
Password: 
[root@foundation29 ~]# vim /etc/hosts
172.25.254.129   www.westos.com news.westos.com music.westos.com login.westos.com.com

这里写图片描述
这里写图片描述

虚拟机:
[root@jane1 httpd]# pwd
/etc/httpd
[root@jane1 httpd]# ls
apacheuser  conf  conf.d  conf.modules.d  logs  modules  run
[root@jane1 httpd]# cd conf.d/
[root@jane1 conf.d]# ls
autoindex.conf  README  userdir.conf  welcome.conf
[root@jane1 conf.d]# vim default.conf
 1 <VirtualHost _default_:80>    
  2          DocumentRoot /var/www/html   ##指定默认发布目录
  3          CustomLog "logs/default.log" combined  ##混合日志文件
  4 </VirtualHost>

这里写图片描述
这里写图片描述

[root@jane1 conf.d]# mkdir /var/www/virtual/westos.com/news -p
[root@jane1 conf.d]# mkdir /var/www/virtual/westos.com/music -p
[root@jane1 conf.d]# vim /var/www/virtual/westos.com/news/index.html
[root@jane1 conf.d]# vim /var/www/virtual/westos.com/music/index.html

这里写图片描述
这里写图片描述
这里写图片描述

[root@jane1 conf.d]# vim news.conf
 1 <VirtualHost *:80>
  2           ServerName news.westos.com    ##首页下的子网站
  3           DocumentRoot "/var/www/virtual/westos.com/news/"   ##指定news所在发布目录
  4           CustomLog "logs/news.log" combined   ##混合日志文件
  5 </VirtualHost>
  6 <Directory "/var/www/virtual/westos.com/news/">
  7          Require all granted
  8 </Directory>

这里写图片描述

[root@jane1 conf.d]# cp news.conf music.conf
[root@jane1 conf.d]# vim music.conf

这里写图片描述

[root@jane1 conf.d]# systemctl restart httpd

这里写图片描述

在火狐浏览器地址栏内分别输入 news.westos.com music.westos.com 就可以看到相应文件内容

这里写图片描述
这里写图片描述

七、https

     https是用户在通过http访问时数据不会被破解,简单来说就是http的加密。

     httos的默认访问端口为443
[root@jane1 conf.d]# yum install crypto-utils -y  ##生成产生加密证书的命令
[root@jane1 conf.d]# yum install mod_ssl -y
[root@jane1 conf.d]# genkey www.westos.com    ##配置其证书信息

分别为加密的key和加密证书的文件及其位置,选择Next进行下一步
这里写图片描述
选择key文件的大小,建议选择1024适中
这里写图片描述
此步为收集密码数据,速度较慢,此时需要在一个新的shell(虚拟机)命令行随机输入内容,速度会迅速加快
这里写图片描述
该步骤为是否向CA机构发送,选择NO,不发送
这里写图片描述
不需要钥匙
这里写图片描述
填写网站的基本信息,依次为国家、省份、所在城市、公司名称,所属部门,网站网址名称

完成后Next即可创建成功
这里写图片描述
获得了生成的key和密码证书

output will be written to /etc/pki/tls/certs/www.westos.com.crt
output key written to /etc/pki/tls/private/www.westos.com.key

这里写图片描述

[root@jane1 conf.d]# ls
autoindex.conf  music.conf  README    tmprequest    welcome.conf
default.conf    news.conf   ssl.conf  userdir.conf
[root@jane1 conf.d]# vim ssl.conf  ##写入生成的key和密码证书文件路径
[root@jane1 conf.d]# systemctl restart httpd

这里写图片描述

在火狐浏览器地址栏输入 https://www.westos.com
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

进行访问查看证书信息(如果查看不了,ctrl+shift+del清除缓存)
这里写图片描述

八、网页重写

目的:输入指定网址强制使用443https加密

在真机本地解析/etc/hosts加入测试网址login.westos.com

这里写图片描述

[root@jane1 conf.d]# ls
autoindex.conf  music.conf  README    tmprequest    welcome.conf
default.conf    news.conf   ssl.conf  userdir.conf
[root@jane1 conf.d]# cp news.conf login.conf
[root@jane1 conf.d]# vim login.conf
编辑:
SSLEngine on   ##表示认证打开
Require all granted    ##允许所有人访问
RewriteEngine on 打开重写功能
RewriteRule 重写规则 *(/.*)$客户在浏览器地址栏中输入的所有字符
https://     强制客户加密访问
 %{HTTP_HOST}客户求求主机
$1表示^(/.*)$的值
[redirect=301]临时重写 (=302永久重写)

这里写图片描述

[root@jane1 conf.d]# systemctl restart httpd
[root@jane1 conf.d]# mkdir -p /var/www/virtual/westos.com/login/
[root@jane1 conf.d]# vim /var/www/virtual/westos.com/login/index.html

这里写图片描述

在火狐地址栏输入: login.westos.com http://login.westos.com 网址访问查看,认证后发现可以网址前面强制加入https://

这里写图片描述
这里写图片描述

九、apache支持的语言

php语言

[root@jane1 conf.d]# yum install php -y
[root@jane1 ~]# cd /var/www/html/
[root@jane1 html]# ls
index.html  test.html  westos
[root@jane1 html]# vim index.php

这里写图片描述

[root@jane1 html]# vim /etc/httpd/conf/httpd.conf

这里写图片描述

[root@jane1 html]# systemctl restart httpd
在火狐地址栏输入: 172.25.254.129 就会出现php的界面

这里写图片描述

cgi语言

[root@jane1 html]# ls
index.html  index.php  test.html  westos
[root@jane1 html]# mkdir cgi
[root@jane1 html]# ls
cgi  index.html  index.php  test.html  westos
[root@jane1 html]# vim cgi/index.cgi

这里写图片描述

在火狐地址栏输入:http://172.25.254.129/cgi/index.cgi  ##不会执行命令,因为权限不够
[root@jane1 html]# chmod +x cgi/index.cgi         ##给权限
[root@jane1 html]# ./cgi/index.cgi
Content-type: text/html

Sun May 27 02:08:49 EDT 2018
[root@jane1 html]# ls
cgi  index.html  index.php  test.html  westos
[root@jane1 html]# cd
[root@jane1 ~]# cd /etc/httpd/conf.d/
[root@jane1 conf.d]# ls
autoindex.conf  login.conf  news.conf  README    tmprequest    welcome.conf
default.conf    music.conf  php.conf   ssl.conf  userdir.conf
[root@jane1 conf.d]# vim default.conf

这里写图片描述

十、创建一个 Discuz论坛:

[root@jane1 ~]# systemctl start mariadb
[root@jane1 ~]# cd /var/www/html/
[root@jane1 html]# ls
cgi  Discuz_X3.2_SC_UTF8.zip  index.html  index.php  test.html  westos
[root@jane1 html]# unzip Discuz_X3.2_SC_UTF8.zip
[root@jane1 html]# ls
cgi                      index.html  readme     upload   westos
Discuz_X3.2_SC_UTF8.zip  index.php   test.html  utility
[root@jane1 html]# chmod 777 /var/www/html/upload/ -R

在火狐浏览器输入:172.25.254.129/upload.install

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

内容概要:本文深入探讨了Kotlin语言在函数式编程和跨平台开发方面的特性和优势,结合详细的代码案例,展示了Kotlin的核心技巧和应用场景。文章首先介绍了高阶函数和Lambda表达式的使用,解释了它们如何简化集合操作和回调函数处理。接着,详细讲解了Kotlin Multiplatform(KMP)的实现方式,包括共享模块的创建和平台特定模块的配置,展示了如何通过共享业务逻辑代码提高开发效率。最后,文章总结了Kotlin在Android开发、跨平台移动开发、后端开发和Web开发中的应用场景,并展望了其未来发展趋势,指出Kotlin将继续在函数式编程和跨平台开发领域不断完善和发展。; 适合人群:对函数式编程和跨平台开发感兴趣的开发者,尤其是有一定编程基础的Kotlin初学者和中级开发者。; 使用场景及目标:①理解Kotlin中高阶函数和Lambda表达式的使用方法及其在实际开发中的应用场景;②掌握Kotlin Multiplatform的实现方式,能够在多个平台上共享业务逻辑代码,提高开发效率;③了解Kotlin在不同开发领域的应用场景,为选择合适的技术栈提供参考。; 其他说明:本文不仅提供了理论知识,还结合了大量代码案例,帮助读者更好地理解和实践Kotlin的函数式编程特性和跨平台开发能力。建议读者在学习过程中动手实践代码案例,以加深理解和掌握。
内容概要:本文深入探讨了利用历史速度命令(HVC)增强仿射编队机动控制性能的方法。论文提出了HVC在仿射编队控制中的潜在价值,通过全面评估HVC对系统的影响,提出了易于测试的稳定性条件,并给出了延迟参数与跟踪误差关系的显式不等式。研究为两轮差动机器人(TWDRs)群提供了系统的协调编队机动控制方案,并通过9台TWDRs的仿真和实验验证了稳定性和综合性能改进。此外,文中还提供了详细的Python代码实现,涵盖仿射编队控制类、HVC增强、稳定性条件检查以及仿真实验。代码不仅实现了论文的核心思想,还扩展了邻居历史信息利用、动态拓扑优化和自适应控制等性能提升策略,更全面地反映了群体智能协作和性能优化思想。 适用人群:具备一定编程基础,对群体智能、机器人编队控制、时滞系统稳定性分析感兴趣的科研人员和工程师。 使用场景及目标:①理解HVC在仿射编队控制中的应用及其对系统性能的提升;②掌握仿射编队控制的具体实现方法,包括控制器设计、稳定性分析和仿真实验;③学习如何通过引入历史信息(如HVC)来优化群体智能系统的性能;④探索中性型时滞系统的稳定性条件及其在实际系统中的应用。 其他说明:此资源不仅提供了理论分析,还包括完整的Python代码实现,帮助读者从理论到实践全面掌握仿射编队控制技术。代码结构清晰,涵盖了从初始化配置、控制律设计到性能评估的各个环节,并提供了丰富的可视化工具,便于理解和分析系统性能。通过阅读和实践,读者可以深入了解HVC增强仿射编队控制的工作原理及其实际应用效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值