- 创建网页内容
[root@localhost ~]# cd /usr/local/apache/htdocs/
[root@localhost htdocs]# ls
love1 love2
[root@localhost htdocs]# cd love1
[root@localhost love1]# ls
love1.zip
[root@localhost love1]# unzip love1.zip
Archive: love1.zip
creating: css/
inflating: css/theme.css
creating: images/
inflating: images/1.gif
inflating: images/1.mp3
inflating: images/2.jpg
inflating: images/3.jpg
inflating: images/emoji_bixin.jpg
inflating: images/emoji_kelian.jpg
inflating: images/music_note_big.png
inflating: index.html
creating: js/
inflating: js/jquery-2.0.3.min.js
inflating: js/jweixin-1.2.0.js
inflating: js/start_onlyyou.js
inflating: js/theme_common.js
inflating: js/typed.min.js
[root@localhost love1]# cd …/love2
[root@localhost love2]# ls
love2.zip
[root@localhost love2]# unzip love2.zip
Archive: love2.zip
creating: images/
inflating: images/1.jpg
inflating: index.html
creating: js/
inflating: js/yiqi.js
creating: style/
inflating: style/main.css
[root@localhost love2]#
- 修改配置文件
[root@localhost love1]# pwd
/usr/local/apache/htdocs/love1
[root@localhost love1]# vim …/…/conf/extra/httpd-vhosts.conf
[root@localhost love1]# cat …/…/conf/extra/httpd-vhosts.conf
<VirtualHost *:80>
ServerAdmin rivers@163.com
DocumentRoot “/usr/local/apache/htdocs/love1”
ServerName www.love1.lan1.com
ServerAlias www.biaobai.com
ErrorLog “love1.com-error_log”
CustomLog “logs/love1.com-access_log” common
<VirtualHost *:80>
ServerAdmin rivers@163.co
DocumentRoot “/usr/local/apache/htdocs/love2”
ServerName www.love2.lan2.com
ErrorLog “logs/love2.com-error_log”
CustomLog “logs/love2.com-access_log” common
[root@localhost love1]#
- 重启服务
[root@localhost love1]# /usr/local/apache/bin/apachectl stop
[root@localhost love1]# /usr/local/apache/bin/apachectl start
-
测试:
-
输入:
www.love1.lan1.com
访问
- 输入:
www.love2.lan2.com
Worker MPM引擎配置段;
StartServers 8
#默认启动Apache 工作进程数
MaxClients 2000
#每秒支持的最大客户端并发;
MinSpareThreads 25
#最小空闲线程数;
MaxSpareThreads 60
#最小空闲线程数;
ThreadsPerChild 40
#每个进程启动的线程数;
MaxRequestsPerChild 0
#每个进程能处理的最大请求数,0表示无限制;
-
测试工具 ab
-
常用参数:
-
-c 并发多少次
-
-n 请求次数
[root@localhost apache]# ./bin/ab -c 1000 -n 10000 http://www.love2.lan2.com/index.html
This is ApacheBench, Version 2.3 <$Revision: 1879490 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking www.love2.lan2.com (be patient)
Completed 1000 requests
Completed 2000 requests
Completed 3000 requests
Completed 4000 requests
Completed 5000 requests
Completed 6000 requests
Completed 7000 requests
Completed 8000 requests
Completed 9000 requests
Completed 10000 requests
Finished 10000 requests
Server Software: Apache/2.4.46
Server Hostname: www.love2.lan2.com
Server Port: 80
Document Path: /index.html
Document Length: 585 bytes
Concurrency Level: 1000
Time taken for tests: 1.908 seconds
Complete requests: 10000
Failed requests: 0
Total transferred: 8310000 bytes
HTML transferred: 5850000 bytes
Requests per second: 5240.58 [#/sec] (mean)
Time per request: 190.819 [ms] (mean)
Time per request: 0.191 [ms] (mean, across all concurrent requests)
Transfer rate: 4252.85 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 51 212.4 1 1009
Processing: 11 53 175.6 16 1618
Waiting: 8 53 175.6 15 1618
Total: 12 105 288.7 17 1723
Percentage of the requests served within a certain time (ms)
50% 17
66% 19
75% 23
80% 31
90% 203
95% 1019
98% 1219
99% 1419
100% 1723 (longest request)
[root@localhost apache]# ./bin/ab -c 1000 -n 50000 http://www.love2.lan2.com/index.html
This is ApacheBench, Version 2.3 <$Revision: 1879490 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking www.love2.lan2.com (be patient)
Completed 5000 requests
Completed 10000 requests
Completed 15000 requests
Completed 20000 requests
Completed 25000 requests
Completed 30000 requests
Completed 35000 requests
Completed 40000 requests
Completed 45000 requests
apr_socket_recv: Connection reset by peer (104)
Total of 49944 requests completed
[root@localhost apache]#
- 两种权限设置方法
<VirtualHost *:80>
ServerAdmin rivers@163.com
DocumentRoot “/usr/local/apache/htdocs/love1”
ServerName www.love1.lan1.com
ServerAlias www.biaobai.com
ErrorLog “love1.com-error_log”
CustomLog “logs/love1.com-access_log” common
<Directory /usr/local/apache/htdocs/love1>
AllowOverride ALL
Options Indexes FollowSymLinks
Order allow,deny
Allow from 192.168.10.10
<VirtualHost *:80>
ServerAdmin rivers@163.co
DocumentRoot “/usr/local/apache/htdocs/love2”
ServerName www.love2.lan2.com
ErrorLog “logs/love2.com-error_log”
CustomLog “logs/love2.com-access_log” common
<Directory /usr/local/apache/htdocs/love2>
Require all granted
Require not ip 192.168.10.10
[root@localhost extra]# curl http://www.love2.lan2.com/index.html
<!doctype html>
我观察你很久了
小姐姐做我对象好不好?
[root@localhost extra]#
[root@localhost ~]# curl http://www.love2.lan2.com/index.html
Forbidden
You don't have permission to access this resource.
[root@localhost ~]#
- Apache 的配置文件 是Apache WEB难点,读者需要掌握配置文件中每个参数的含义,理解日常运维中遇到的故障,并解决问题。
ServerTokens OS 服务器的版本和操作系统而已,不需要改动他,如果不在乎你的系统信息被远程用户查询到,则可以将这个项目注释掉(不建议)
ServerRoot “/etc/httpd” 服务器设置的最顶层目录,有点类似于chroot那种感觉。包括logs , modules等的数据都应该要放置在此目录下面(如果这些配置没有声明成绝对路径的话)
PidFile run/httpd.pid 放置PID的文件,可方便apache软件的管理。只有相对路径考虑
ServerRoot 设置值,所以文件在/etc/httpd/run/httpd.pid
Timeout 60 不论接收或发送,当持续连接等待超过60秒则该次连接就中断一般来说,此数值在300秒左右即可,不需要修改这个原始值
KeepAlive Off 这里最好把默认值“Off”修改为“On”。这里表示是否允许持续性的连接,也就是一个TCP连接可以具有多个文件资料传送的要求
MaxKeepAliveRequests 100 可以将默认的100改成500或更高与上一个设置的值KeepAlive有关,当KeepAlive的值设置为On的时候,这个数值可以决定。该次连接能够传输的最大传输数量。为了提高效率则可以改大一点。0代表不限制
KeepAliveTimeout 65 在KeepAlive设置为“On”的情况下,该次连接在最后一次传输后等待延迟的秒数,当超过该秒数的时候该连接中断。保持默认值15即可,如果设置的值太高(等待时间较长),在较忙碌的系统上面将会有较多的Apache程序占用资源,可能有效率方面的问题。
StartServers 8 启动Apache的时候,唤醒几个PID来处理服务的。#Apache使用了进程预派生的技术来处理请求,大大提高了响应速度,
MinSpareServers 5 最小预备使用的PID数量
MaxSpareServers 20 最大预备使用的PID数量
ServerLimit 4096 服务器的限制
MaxClients 4096 最多可以有多少个客户端同时连接到Apache
Maxrequestsper Child 4000 每个进程能处理的最大请求数
Loadmodule mod version.so 静态加载 apache相关模块
erverAdminsupport@ifed.net 管理员邯箱,网站异常,错误信息会发生至该邯箱
- httpd.conf (Apache的主配文件)
[root@localhost ~]# ll /usr/local/apache/conf/httpd.conf
-rw-r–r-- 1 root root 19069 Apr 4 11:57 /usr/local/apache/conf/httpd.conf
[root@localhost ~]#
httpd.conf是Apache的主配文件,整个Apache也不过就是这个配置文件,里面几乎包含了所有的配置。有的distribution都将这个文件拆分成数个小文件分别管理不同的参数。但是主要配置文件还是以这个文件为主。只要找到这个文件名就知道如何设置了。后面会详细解释Apache主配文件的每一行配置
- 虚拟主机配置文件
[root@localhost ~]# ll /usr/local/apache/conf/extra/httpd-vhosts.conf
-rw-r–r-- 1 root root 810 Apr 4 14:05 /usr/local/apache/conf/extra/httpd-vhosts.conf
[root@localhost ~]#
- Apache支持很多的外挂模块
[root@localhost ~]# ll /usr/local/apache/modules/
total 3576
-rw-r–r-- 1 root 40 15845 Apr 3 16:36 httpd.exp
-rwxr-xr-x 1 root root 13632 Apr 3 16:47 mod_access_compat.so
-rwxr-xr-x 1 root root 13344 Apr 3 16:47 mod_actions.so
-rwxr-xr-x 1 root root 22776 Apr 3 16:47 mod_alias.so
例如PHP以及SSL都是Apache外挂的一种。所有你想要使用的模块文件默认是放置在这个目录当中的
- 网站根目录
这个目录就是Apache默认的存放首页的目录(默认是index.html)
[root@localhost ~]# ll /usr/local/apache/htdocs/
total 0
drwxr-xr-x 5 root root 76 Apr 4 10:37 love1
drwxr-xr-x 5 root root 78 Apr 4 10:38 love2
[root@localhost ~]#
- Apache 默认小图标
[root@localhost ~]# ll /usr/local/apache/icon
这个目录提供Apache默认给予的一些小图示,可以随意使用。
- /var/www/cgi-bin/
[root@localhost ~]# ll /usr/local/apache/cgi-bin/
total 16
-rw-r–r-- 1 root 40 820 Dec 18 2012 printenv
-rw-r–r-- 1 root 40 1074 Dec 18 2012 printenv.vbs
-rw-r–r-- 1 root 40 1133 Dec 18 2012 printenv.wsf
最后
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,不论你是刚入门Java开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
w-r–r-- 1 root 40 820 Dec 18 2012 printenv
-rw-r–r-- 1 root 40 1074 Dec 18 2012 printenv.vbs
-rw-r–r-- 1 root 40 1133 Dec 18 2012 printenv.wsf
最后
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
[外链图片转存中…(img-pyUKLyLi-1715666445592)]
[外链图片转存中…(img-3Ut0M6Ua-1715666445592)]
[外链图片转存中…(img-MOZrLVAK-1715666445593)]
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,不论你是刚入门Java开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!