博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
httpd-上课内容
阅读量:6842 次
发布时间:2019-06-26

本文共 3682 字,大约阅读时间需要 12 分钟。

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

1
2
3
<IfModule dir_module>
    
DirectoryIndex index.html text.html     
#此处会优先读取前面一个文件。如果index文件不存在,就读取text文件。如果都没有,显示测试页 </IfModule>

/etc/httpd/conf.d/*.conf  conf.d目录下的所有conf文件




虚拟主机

基于主机名: 

1
2
3
4
<VirtualHost *:80>
        
ServerName localhost.localdomain
        
DocumentRoot 
/var/www/local
<
/VirtualHost
>

添加字段,控制文件访问权限

创建2个用户(不是系统用户,是访问html的用户)

httpd-manual里面 Authentication and Authorization 中有

1
2
3
4
5
6
7
8
9
10
11
[root@localhost conf]
# htpasswd -c /etc/httpd/.htpasswd user1
New password: 
Re-
type 
new password: 
Adding password 
for 
user user1
[root@localhost conf]
# htpasswd /etc/httpd/.htpasswd user2
New password: 
Re-
type 
new password: 
Adding password 
for 
user user2
[root@localhost conf]
# cat /etc/httpd/.htpasswd 
user1:$apr1$
/HcTzDUm
$16tL9pldhS4YV7i1E6GKU0
user2:$apr1$qTaxMLFd$1YtqCEglB1e5lNyjUbuec1
1
2
3
4
5
6
7
8
9
10
11
<VirtualHost *:80>
        
ServerName localhost.localdomain
        
DocumentRoot 
/var/www/local
        
<Directory 
/var/www/local
>
        
AuthType basic
        
AuthName 
"Please Input Your Name&Passwd!"
        
AuthUserFile 
/etc/httpd/
.htpasswd
        
Require user user1     
#只有user1能访问
        
Require valid-user     
#.htpasswd中的用户都能访问
        
<
/Directory
>
 
<
/VirtualHost
>

以索引的方式显示文件,并且可以显示链接文件

Mapping URLs to the Filesystem 手册中有

1
2
3
<Directory 
/var/www/local/file
>
        
Options Indexes FollowSymlinks
        
<
/Directory
>
1
        
Options -Indexes -FollowSymlinks    
#要关闭功能在前面加上-

添加IP限制

Access Control 手册

1
2
3
4
5
<Directory 
/var/www/local/allow
>
         
Order allow,deny   
##后面的优先级高!!如果allow在后面,allow的优先级高
         
allow from 10.42.1.0
/24
         
deny from 10.42.1.14
         
<
/Directory
>



https

默认端口:443

安装包:mod_ssl

ssl的配置文件

/etc/httpd/conf.d/ssl.conf

1
2
3
4
5
6
7
8
9
10
11
12
13
14
Listen 443
<VirtualHost *:443>
        
ServerName localhost.localdomain
        
DocumentRoot 
/var/www/ssl
        
SSLEngine on
        
SSLProtocol all -SSLv2
        
SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5
        
SSLCertificateFile 
/etc/pki/tls/certs/localhost
.crt
        
#服务端的证书
        
SSLCertificateKeyFile 
/etc/pki/tls/private/localhost
.key
        
#服务端的私钥
        
SSLCACertificateFile 
/etc/pki/tls/certs/ca-bundle
.crt
        
#CA的证书
<
/VirtualHost
>


不要CA的证书,自己签名

1
2
3
4
5
6
[root@localhost certs]
# ls
ca-bundle.crt        localhost.crt    Makefile
ca-bundle.trust.crt  
make
-dummy-cert  renew-dummy-cert
[root@localhost certs]
# pwd
/etc/pki/tls/certs
[root@localhost certs]
# make chomper.crt

这个命令是指生成一个自签的证书,自己给自己签名。

用此种方式restart服务的时候需要输入私钥的密码。

生成一个私钥(需要输入密码),

生成一个公钥(证书)(需要输入私钥的密码)。

然后填写证书的信息(#主机名#)

1
2
3
4
5
6
7
8
9
10
11
Listen 443
SSLPassPhraseDialog 
exec
:
/usr/libexec/httpd-ssl-pass-dialog
<VirtualHost *:443>
        
ServerName www.chomper.com
        
DocumentRoot 
/var/www/ssl
        
SSLEngine on
        
SSLProtocol all -SSLv2
        
SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5
        
SSLCertificateFile 
/etc/pki/tls/certs/chomper
.crt
        
SSLCertificateKeyFile 
/etc/pki/tls/private/chomper
.key
<
/VirtualHost
>



安装包 mod_wsgi

1
2
3
4
5
<VirtualHost *:80>
        
ServerName localhost.localdomain
        
DocumentRoot 
/var/www/ssl
        
WSGIScriptAlias / 
/var/www/ssl/webapp
.wsgi
<
/VirtualHost
>



基于端口的虚拟主机:添加8899端口

1
2
3
4
5
Listen 8899
<VirtualHost *:8899>
        
ServerName www.chomper.com
        
DocumentRoot 
/var/www/ssl
<
/VirtualHost
>
1
2
3
4
5
6
7
[root@localhost conf.d]
# semanage port -l | grep http
http_cache_port_t              tcp      8080, 8118, 8123, 10001-10010
http_cache_port_t              udp      3130
http_port_t                    tcp      80, 81, 443, 488, 8008, 8009, 8443, 9000
pegasus_http_port_t            tcp      5988
pegasus_https_port_t           tcp      5989
[root@localhost conf.d]
# semanage port -a -t http_port_t -p tcp 8899
1
2
3
4
5
6
[root@localhost conf.d]
# semanage port -l | grep http
http_cache_port_t              tcp      8080, 8118, 8123, 10001-10010
http_cache_port_t              udp      3130
http_port_t                    tcp      8899, 80, 81, 443, 488, 8008, 8009, 8443, 9000
pegasus_http_port_t            tcp      5988
pegasus_https_port_t           tcp      5989

本文转自 chomperwu 51CTO博客,原文链接:http://blog.51cto.com/chomper/1696832,如需转载请自行联系原作者

你可能感兴趣的文章
用vbs删除前一天创建的备份文件
查看>>
聊聊同步、异步、阻塞与非阻塞
查看>>
BlockingQueue队列生产者消费者示例
查看>>
excel VBA中如何模拟键盘输入
查看>>
YUV420查表法高效、无失真的转换为RGB32格式
查看>>
C# 程序中如何获取当前目录
查看>>
lucene初识
查看>>
我的友情链接
查看>>
网卡工作模式
查看>>
deepin安装Curl的方法
查看>>
SAP系统日常管理 常见 t-code (一)
查看>>
C++ VS2010 error:LNK2005 已经在*.obj中定义
查看>>
Linux 多线程编程
查看>>
在rhel7中搭建openstack kilo
查看>>
我的友情链接
查看>>
there can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT or ON UPDATE clause
查看>>
LINUX下多路径(multi-path)介绍及使用
查看>>
自动安装varnish shell脚本
查看>>
java内存管理以及GC
查看>>
php REST程序设计的uml图
查看>>