Apache虚拟目录、用户认证、基于端口/IP/域名的虚拟主机、SSL

环境配置:

配置DNS以便域名解析

  1. 安装Bind软件包。

yum install -y bind

2. 修改Bind配置文件。

vim /etc/named.conf

listen-on port 53 { 192.168.200.101; };

allow-query { any; };

vim /etc/named.rfc1912.zones

zone "a.com" IN {

type master;

file "a.com.localhost";

allow-update { none; };

};

3. 修改Bind区域文件。

cd /var/named/

cp -p named.localhost a.com.loaclhost

vim a.com.loaclhost

$TTL 1D

@       IN SOA  a.com. rname.invalid. (

0       ; serial

1D      ; refresh

1H      ; retry

1W      ; expire

3H )    ; minimum

NS      dns.a.com.

dns     A       192.168.200.101

www     A       192.168.200.102

m       A       192.168.200.102

4. Bind服务器语法检查,启动Bind服务。

named-checkconf /etc/named.conf

named-checkconf /etc/named.rfc1912.zones

named-checkzone a.com /var/named/a.com.localhost

systemctl start named

systemctl enable named

WEB服务器安装apache软件包。

yum install -y httpd httpd-devel

虚拟目录

  1. 虚拟目录配置。

vim /etc/httpd/conf/httpd.conf

95 ServerName www.a.com:80

vim /etc/httpd/conf.d/vhost.conf

alias /vshare "/var/www/share"

<directory "/var/www/share">

allowoverride none

options includesnoexec

order allow,deny

allow from all

</directory>

2. 创建站点目录,配置默认文档

mkdir /var/www/share/

echo "share" > /var/www/share/index.html

chown apache:apache /var/www/share/

3. apache语法检测,启动apache服务

httpd -t

systemctl start httpd

4. 客户端dns设置为192.168.200.101,然后访问www.a.com/vshare

用户认证

  1. 虚拟目录配置。

vim /etc/httpd/conf.d/vhost.conf

alias /vhome "/var/www/home"

<directory "/var/www/home">

authtype basic

authname "enter user and password"

authuserfile /etc/httpd/users-password

require valid-user

options Includesnoexec

allowOverride none

order allow,deny

allow from all

</directory>

2. 创建站点目录,配置默认文档

mkdir /var/www/home/

echo "home" >/var/www/home/index.html

chown apache:apache /var/www/home

3. 创建用户认证

htpasswd -c /etc/httpd/users-password user123

htpasswd /etc/httpd/users-password user456     #第二次创建不加-c

4. apache语法检测,启动apache服务

httpd -t

systemctl restart httpd

5. 客户端dns设置为192.168.200.101,然后访问www.a.com/vhome

基于端口的虚拟主机

  1. 虚拟目录配置。

vim /etc/httpd/conf/httpd.conf

97 ServerName www.a.com:80

42 listen 80

listen 8888

listen 9999

vim /etc/httpd/conf.d/vhost.conf

<virtualhost www.a.com:8888>

servername www.a.com:8888

serveradmin [email protected]

documentroot /var/www/port8888

errorlog logs/port8888/error.log

customlog logs/port8888/access.log combined

</virtualhost>

<virtualhost www.a.com:9999>

servername www.a.com:9999

serveradmin [email protected]

documentroot /var/www/port9999

errorlog logs/port9999/error.log

customlog logs/port9999/access.log combined

</virtualhost>

mkdir /var/www/port8888

mkdir /var/www/port9999

mkdir /etc/httpd/logs/port8888

mkdir /etc/httpd/logs/port9999

chown -R apache:apache /var/www/port*

chown -R apache:apache /etc/httpd/logs/port*

echo "port8888" > /var/www/port8888/index.html

echo "port9999" > /var/www/port9999/index.html

3. apache语法检测,启动apache服务

httpd -t

systemctl restart httpd

基于IP的虚拟主机

多配置一个IP地址用于测试

ifconfig ens32:0 192.168.200.202/24

ip addr

2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000

inet 192.168.200.102/24 brd 192.168.200.255 scope global ens32

inet 192.168.200.202/24 brd 192.168.200.255 scope global secondary ens32:0

vim /etc/httpd/conf.d/vhost.conf

<virtualhost 192.168.200.102:80>

servername 192.168.200.102:80

serveradmin [email protected]

documentroot /var/www/102

errorlog logs/102/error.log

customlog logs/102/access.log combined

</virtualhost>

<virtualhost 192.168.200.202:80>

servername 192.168.200.202:80

serveradmin [email protected]

documentroot /var/www/202

errorlog logs/202/error.log

customlog logs/202/access.log combined

</virtualhost>

mkdir /var/www/102

mkdir /var/www/202

mkdir /etc/httpd/logs/102

mkdir /etc/httpd/logs/202

chown -R apache:apache /var/www/*02

chown -R apache:apache /etc/httpd/logs/*02

echo "102" > /var/www/102/index.html

echo "202" > /var/www/202/index.html

apache语法检测,启动apache服务

httpd -t

systemctl restart httpd

基于域名的虚拟主机

  1. 虚拟目录配置。

vim /etc/httpd/conf/httpd.conf

97 ServerName a.com:80

vim /etc/httpd/conf.d/vhost.conf

<virtualhost www.a.com:80>

servername www.a.com:80

serveradmin [email protected]

documentroot /var/www/www

errorlog logs/www/error.log

customlog logs/www/access.log combined

</virtualhost>

<virtualhost m.a.com:80>

servername m.a.com:80

serveradmin [email protected]

documentroot /var/www/m

errorlog logs/m/error.log

customlog logs/m/access.log combined

</virtualhost>

mkdir /var/www/www

mkdir /var/www/m

mkdir /etc/httpd/logs/www

mkdir /etc/httpd/logs/m

chown -R apache:apache /var/www/www

chown -R apache:apache /var/www/m

chown -R apache:apache /etc/httpd/logs/www

chown -R apache:apache /etc/httpd/logs/m

echo "www" > /var/www/www/index.html

echo "m" > /var/www/m/index.html

apache语法检测,启动apache服务

httpd -t

systemctl restart httpd

基于SSL的web站点配置。

yum install -y mod_ssl openssl openssl-devel

cd /etc/pki/tls/private

openssl genrsa 1024 > www.a.com.key

cd ../certs/

openssl req -new -x509 -days 365 -key ../private/www.a.com.key -out www.a.com.crt

Country Name (2 letter code) [GB]: 输入国家地区代码,如中国的 CN

State or Province Name (full name) [Berkshire]: 地区省份

Locality Name (eg, city) [Newbury]: 城市名称

Organization Name (eg, company) [My Company Ltd]: 公司名称

Organizational Unit Name (eg, section) []: 部门名称

Common Name (eg, your name or your server’s hostname) []: 申请证书域名

Email Address []: 电子邮箱

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

59 DocumentRoot "/var/www/ssl"
60 ServerName www.a.com:443

100 SSLCertificateFile /etc/pki/tls/certs/www.a.com.crt

107 SSLCertificateKeyFile /etc/pki/tls/private/www.a.com.key

mkdir /var/www/ssl

chown -R apache:apache /var/www/ssl/

echo "1 2 3 4 5" > /var/www/ssl/index.html

apache语法检测,启动apache服务

httpd -t

systemctl restart httpd

原文地址:https://www.cnblogs.com/liang-yao/p/8448469.html

时间: 2024-11-08 01:09:58

Apache虚拟目录、用户认证、基于端口/IP/域名的虚拟主机、SSL的相关文章

Apache搭建Web主机(虚拟目录、分别基于IP地址、端口、主机名)

Apache介绍 Apache HTTP Server是一款开源的网站服务软件,在Web服务器领域中长期保持着超过半数的份额,Apache服务器可以运行在Linux.UNIX.Windows等多数操作系统平台中. Apache服务器在功能.性能和安全性等方面的表现都是比较突出的,可以较好地满足Web服务器用户的应用需求,其主要特点包括以下几个方面: 开放源代码 跨平台应用 支持各种Web编程语言 模块化设计 运行非常稳定 良好的安全性 构建虚拟Web主机 在同一台Apache服务器中运行多个We

Apache(httpd)配置--用户认证,域名跳转和访问日志配置

一.用户认证 用户认证功能就是在用户访问网站的时候,需要输入用户名密码才能进行访问.一些比较好总要的站点和网站后台都会加上用户认证,以保证安全.实例:下面对zlinux.com站点来做一个全站的用户认证: 步骤1:编辑虚拟主机配置文件 [[email protected] ~]# vim /usr/local/apache2/conf/extra/httpd-vhosts.conf //在linuxtest.com虚拟主机下编辑添加以下内容 <VirtualHost *:80> Documen

centos7编译安装apache后添加用户认证和配置虚拟主机

编译安装apache后的目录文件:/usr/local/apache2 1:用户认证 主配置目录:/usr/local/apache2/conf/ 1)建立目录并设置用户认证: Alias  /1.php/ "/usr/local/apache2/htdocs/1.php" <Directory"/usr/local/apache2/htdocs/"> AllowOverride None Options None Order allow,deny De

Apache服务器的用户认证

经常上网的读者会遇到这种情况:访问一些网站的某些资源时,浏览器弹出一个对话框,要求输入用户名和密码来获取对资源的访问.这就是用户认证的一种技术.用户认证是保护网络系统资源的第一道防线,它控制着所有登录并检查访问用户的合法性,其目标是仅让合法用户以合法的权限访问网络系统的资源.基本的用户认证技术是“用户名+密码”. Apache是目前流行的Web服务器,可运行在Linux.Unix.Windows等操作系统下,它可以很好地解决“用户名+密码”的认证问题.Apache用户认证所需要的用户名和密码有两

PHP学习笔记:APACHE配置虚拟目录、一个站点使用多域名配置方式

我用的是xmapp lite2016的集成包,配置虚拟目录教程如下: 找到httpd-vhosts.conf这个文件,这个文件一般是在xampp\apache\conf\extra这个路径下面,找不到可以搜索下. 你会看到类似的界面: # # Use name-based virtual hosting. # ##NameVirtualHost *:80 # # VirtualHost example: # Almost any Apache directive may go into a Vi

apache工作机制,压缩,虚拟主机,用户认证

从服务器角度一次web资源请求具体过程 建立连接:tcp三次握手 接收请求 处理请求 访问资源 构建响应报文 发送响应 记录日志 =================================================================== httpd工作模型 阻塞模型,单进程模型.缺点:每次只能响应一个请求,对于现代的高并发无满足 只有一个进程,每次只能响应一个用户的请求 . 多进程模型,缺点:不停的创建和收回进程,进程间切换也耗费时间. httpd监听在套接字上,每当

vsftpd基于pam_mysql的虚拟用户认证

1.ftp用户 匿名用户:映射到某一个固定的系统用户,例如(ftp,vsftp,/var/ftp) 本地用户:系统用户,root及系统用户(0-999) 虚拟用户:nsswitch: name services switch  名称服务转换 PAM: Plugabl Plugable Authentication Modules  插入式认证模块本文主要讲解vsftpd基于pam_mysql的虚拟用户认证步骤. 2.准备环境 操作系统 主机名 IP地址 环境描述 CentOS 7.1 ch7 1

Apache用户认证;域名跳转;

扩展 apache虚拟主机开启php的短标签   http://www.aminglinux.com/bbs/thread-5370-1-1.html 1. 编辑第二个虚拟主机设定Apache用户认证(访问网站需要用户密码认证) [[email protected] ~]# vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf 插入内容如下(设定指定网站访问认证参数如下位置如图) <Directory /data/wwwroot/111.co

Nginx安装、默认虚拟主机、用户认证、nginx中PHP解析

12.6 Nginx安装 准备工作 安装包 [[email protected] ~]# cd /usr/local/src/ 下载安装包:[[email protected] src]# wget http://nginx.org/download/nginx-1.12.1.tar.gz 解压:[[email protected] src]# tar zxvf nginx-1.12.1.tar.gz 安装 环境配置 [[email protected] src]# cd nginx-1.12.