安装apache2虚拟主机并支持ssl(debian)

debian下安装apache2+ssl支持

一、虚拟主机
1、当前版本
cat /etc/debian_version 
5.0.1

2、本机ip
ifconfig|awk -v RS="Bcast:" ‘{print $NF}‘|awk -F: ‘/addr/{print $2}‘
10.1.10.250

3、安装apache2的prefork模式
apt-get -y install apache2-mpm-prefork
apache2 -l|grep prefork.c
  prefork.c

4、支持php
apt-get -y install php5-cli
apt-get -y install libapache2-mod-php5

5、修改虚拟主机监听地址和端口 
cat /etc/apache2/ports.conf
NameVirtualHost 10.1.10.250:80
Listen 10.1.10.250:80

6、我这里准备的是aaa.bbb.com域名(配置里注释掉的目前不用 根据情况使用 所以保留着)
cat /etc/apache2/sites-available/aaa.bbb.com
<VirtualHost 10.1.10.250:80>
    ServerAdmin [email protected]
    ServerName aaa.bbb.com
    DocumentRoot /var/www
    <Directory />
        Options FollowSymLinks
        AllowOverride None
    </Directory>
    <Directory /var/www/>
        Options -Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order allow,deny
        allow from all
    </Directory>
#   ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
#   <Directory "/usr/lib/cgi-bin">
#       AllowOverride None
#       Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
#       Order allow,deny
#       Allow from 127.0.0.1 localhost 10.1.0.0/24
#   </Directory>
    ErrorLog /var/log/apache2/aaa.bbb.com_error.log
    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn
    CustomLog /var/log/apache2/aaa.bbb.com_access.log combined
Alias /jimmy /var/www/ccc/
<Directory /var/www/ccc/>
AllowOverride FileInfo AuthConfig Limit Indexes
Options MultiViews SymLinksIfOwnerMatch IncludesNoExec
<Limit GET POST OPTIONS PROPFIND>
Order Allow,Deny
Allow from 10.0.0.0/8
#AuthName "by Restricted Area"
#AuthType basic
#AuthUserFile /etc/apache2/securepw
#require user www61com
</Limit>
<LimitExcept GET POST OPTIONS PROPFIND>
Order deny,allow
Deny from all
</LimitExcept>
</Directory>
</VirtualHost>

7、创建网站目录ccc
mkdir /var/www/ccc -p

8、创建1个php测试文件   
cat /var/www/ccc/test.php
<?php
phpinfo();
?>;  

9、激活站点
cd /etc/apache2/sites-available
a2ensite aaa.bbb.com 
Enabling site aaa.bbb.com.
Run ‘/etc/init.d/apache2 reload‘ to activate new configuration!

10、修改/etc/hosts在最后添加二行
cat /etc/hosts
10.1.10.250 aaa.bbb.com
aaa.bbb.com 10.1.10.250

11、根据情况修改php配置文件(可以不修改)
cat /etc/php5/apache2/php.ini
expose_php = Off            #关闭版本号 
display_errors = Off        #不显示错误 
log_errors on               #提供错误日志

12、全部配置完后需要重启apache2
/etc/init.d/apache2 restart

13、使用域名访问测试
如果在windows机器上测试的话 可以修改hosts我这边修改过了
访问aaa.bbb.com/ccc/test.php就可以看到以下图片了

二、支持ssl
1、建立ssl目录
mkdir /etc/apache2/ssl -p

2、创建一个证书(时间365天)并填写相关一些信息
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/apache2/ssl/aaa.bbb.com.key -out /etc/apache2/ssl/aaa.bbb.com.crt 
Generating a 2048 bit RSA private key
......+++
....+++
writing new private key to ‘/etc/apache2/ssl/aaa.bbb.com.key‘
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter ‘.‘, the field will be left blank.
-----
Country Name (2 letter code) [AU]:cn
State or Province Name (full name) [Some-State]:sh
Locality Name (eg, city) []:shanghai
Organization Name (eg, company) [Internet Widgits Pty Ltd]:aaa
Organizational Unit Name (eg, section) []:aaa
Common Name (eg, YOUR name) []:aaa
Email Address []:[email protected]

3、aaa.bbb.com的ssl域名
cat /etc/apache2/sites-available/aaa.bbb.com-ssl
<VirtualHost 10.1.10.250:443>
    ServerAdmin [email protected]
    ServerName aaa.bbb.com
    SSLEngine On
    SSLCertificateKeyFile /etc/apache2/ssl/aaa.bbb.com.key
    SSLCertificateFile /etc/apache2/ssl/aaa.bbb.com.crt
Alias /jimmy /var/www/ccc/
    <Directory /var/www/ccc/>
        Options FollowSymLinks +Execcgi
        AllowOverride None 
        Order deny,allow
        Deny from all
        Allow from 10.0.0.0/8
    </Directory>
    
    ErrorLog /var/log/apache2/aaa.bbb.com_ssl.error.log
    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn
    CustomLog /var/log/apache2/aaa.bbb.com_ssl.access.log combined
</VirtualHost>

4、开启ssl模块支持
cd /etc/apache2/mods-available
a2enmod ssl
Enabling module ssl.
See /usr/share/doc/apache2.2-common/README.Debian.gz on how to configure SSL and create self-signed certificates.
Run ‘/etc/init.d/apache2 restart‘ to activate new configuration!

5、开启aaa.bbb.com-ssl站点
cd /etc/apache2/sites-available
a2ensite aaa.bbb.com-ssl 
Enabling site aaa.bbb.com-ssl.
Run ‘/etc/init.d/apache2 reload‘ to activate new configuration!

6、配置443端口
cat /etc/apache2/ports.conf 
NameVirtualHost 10.1.10.250:80
Listen 10.1.10.250:80
NameVirtualHost 10.1.10.250:443
<IfModule mod_ssl.c>
    # SSL name based virtual hosts are not yet supported, therefore no
    # NameVirtualHost statement here
    Listen 10.1.10.250:443
</IfModule>

7、全部配置完后需要重启apache2
/etc/init.d/apache2 restart

8、查看监听端口
netstat -tupnl |grep apache2
tcp        0      0 10.1.10.250:80          0.0.0.0:*               LISTEN      5460/apache2    
tcp        0      0 10.1.10.250:443         0.0.0.0:*               LISTEN      5460/apache2 

9、使用域名访问测试
如果在windows机器上测试的话 可以修改hosts我这边修改过了
访问https://aaa.bbb.com/ccc/test.php就可以看到以下图片了

三、参考文档
http://httpd.apache.org/docs/2.2/
时间: 2024-10-25 06:22:07

安装apache2虚拟主机并支持ssl(debian)的相关文章

ubuntu apache2 虚拟主机服务

ubuntu apache2 虚拟主机服务 本次配置的是一个 ip 对应多个 虚拟主机 1:先检查 ubuntu server 是否已经安装了 apache2 web服务: apache2 -v 看到上图即表示已经已经安装,如果没有安装!先安装 sudo apt-get install apache2 安装成功之后:先开启默认的网站,测试一下 sudo service apache2 start 在浏览器里面输入:127.0.0.1即可看到默认网站 2:配置虚拟主机 www.test.com 先

Apache2.4.25编译安装之虚拟主机For Centos7

安装之前准备: 配置好防火墙,selinux,时区. 检查系统是否安装了httpd服务 yum install gcc gcc-c++ zlib-devel 下载软件,pcre,apr,apr-util,apache wget https://ftp.pcre.org/pub/pcre/pcre-8.40.tar.gz wget http://mirror.bit.edu.cn/apache//apr/apr-1.5.2.tar.gz wget http://mirror.bit.edu.cn/

构建Nginx服务器之一 安装及虚拟主机配置

一.Nginx简介     Nginx("engine x") 是一个高性能的HTTP和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器. Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本0.1.0发布于2004年10月4日.其将源代码以类BSD许可证的形式发布,因它的稳定性.丰富的功能集.示例配置文件和低系统资源的消耗而闻名. 它已经在众多流量很大的俄罗斯网站上使用了很长时间,这些网站包括Yandex.

wampserver2.5下载、安装、虚拟主机配置详解

1,下载wampserver2.5 wampserver2.5 64位下载 wampserver2.5 32位下载 2,安装wampserver2.5 一直点击next就可以安装成功了,安装后电脑右下角会出现如下图标 红色框内显示绿色代表安装完成并成功启动了,默认是英文的现在我们切换为中文的=>右键点击绿色图标=>Language=>chinese. 3,wampserver虚拟主机配置 (这是我的安装目录)打开E:\wamp\bin\apache\apache2.4.9\conf\ht

linux nginx编译安装以及虚拟主机的配置

Nginx(发音engine  x)专为性能优化而开发,其最知名的优点是它的稳定性和低系统资源消耗,以及对HTTP并发连接的高处理能力(单台物理服务器可支持30000-50000个并发请求).正因为如此,大量提供社交网站.新闻资讯.电子商务以及虚拟主机等服务的企业纷纷选择Ngnix来提供WEB服务. nginx的具体配置过程: 1.首先系统拥有yum仓库,安装依赖包 2.解压nginx的安装包 3.安装gcc编译工具 4.进入nginx目录,进行编译配置 5.安装nginx 6.优化nginx的

01 安装apache php配置 时区 环境变量 安装mysql 虚拟主机 文件夹访问权限 目录别名

php介绍 简介与历史 应用领域: php运行环境 php语言运行原理 安装apache: PHP的命令行运行模式(独立运行): 配置apache以运行php网页 配置php的基本运行环境 确定php配置文件(php.ini)的位置: 配置时区: 设置环境变量 检测apache配置文件语法 配置数据库连接机制 安装mysql数据库 虚拟主机配置 端口监听: 主机配置关键项 配置文件夹访问权限 主机别名设置 文件夹访问控制的文件控制方式 目录别名设置Alias 多站点配置: php介绍 简介与历史

apache2虚拟主机实现一个服务器绑定多个域名

1.apache2的配置 首先要配置好apache2,如果未配置,请参考我之前的博文:lamp的配置 2.域名的解析 将全部域名的www和@的A记录解析到云服务器的IP 3.虚拟主机的配置 1.配置httpd.conf 如果etc/httpd/conf/httpd.conf存在,则配置此httpd.conf 如果etc/httpd/conf/httpd.conf不存在,此时需要我们在/etc/apache2下新建一个httpd.conf,配置此httpd.conf,然后 /etc/apache2

nginx安装,虚拟主机,用户认证及域名重定向

nginx安装 cd /usr/local/src/ wget http://nginx.org/download/nginx-1.14.0.tar.gz tar zxfv nginx-1.14.0.tar.gz cd nginx-1.14.0/ ./configure --prefix=/usr/local/nginx make && make install 启动文件配置vim /etc/init.d/nginx,参考下面 #!/bin/bash # chkconfig: - 30 2

Laravel 部署 安装到虚拟主机的方法

虚拟主机无法将目录绑定到 public 目录上,这时,访问就会变成 url/public/. 怎么解决这个问题呢? 解决的主要方法是将Laravel 放到网站的根目录,之后用 .htacess 文件 重新定向请求到 public文件夹.记得设置可存储属性.这种方式我们鼓励,但是虚拟空间暂时没有办法.详细步骤:1. 将 Laravel 放置到你的站点根目录.2.在站点根目录放置 .htaccess 文件,内容如下: 1 2 3 4 5 <IfModule mod_rewrite.c>     R