1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
<code>我的博客已迁移到xdoujiang.com请去那边和我交流</code>
<code>debian下安装apache2+ssl支持</code>
<code>一、虚拟主机</code>
<code>1、当前版本</code>
<code>cat</code> <code>/etc/debian_version</code>
<code>5.0.1</code>
<code>2、本机ip</code>
<code>ifconfig</code><code>|</code><code>awk</code> <code>-</code><code>v</code> <code>RS=</code><code>"Bcast:"</code> <code>'{print $NF}'</code><code>|</code><code>awk</code> <code>-F: </code><code>'/addr/{print $2}'</code>
<code>10.1.10.250</code>
<code>3、安装apache2的prefork模式</code>
<code>apt-get -y </code><code>install</code> <code>apache2-mpm-prefork</code>
<code>apache2 -l|</code><code>grep</code> <code>prefork.c</code>
<code> </code><code>prefork.c</code>
<code>4、支持php</code>
<code>apt-get -y </code><code>install</code> <code>php5-cli</code>
<code>apt-get -y </code><code>install</code> <code>libapache2-mod-php5</code>
<code>5、修改虚拟主机监听地址和端口 </code>
<code>cat</code> <code>/etc/apache2/ports</code><code>.conf</code>
<code>NameVirtualHost 10.1.10.250:80</code>
<code>Listen 10.1.10.250:80</code>
<code>6、我这里准备的是aaa.bbb.com域名(配置里注释掉的目前不用 根据情况使用 所以保留着)</code>
<code>cat</code> <code>/etc/apache2/sites-available/aaa</code><code>.bbb.com</code>
<code><VirtualHost 10.1.10.250:80></code>
<code> </code><code>ServerAdmin webmaster@localhost</code>
<code> </code><code>ServerName aaa.bbb.com</code>
<code> </code><code>DocumentRoot </code><code>/var/www</code>
<code> </code><code><Directory /></code>
<code> </code><code>Options FollowSymLinks</code>
<code> </code><code>AllowOverride None</code>
<code> </code><code><</code><code>/Directory</code><code>></code>
<code> </code><code><Directory </code><code>/var/www/</code><code>></code>
<code> </code><code>Options -Indexes FollowSymLinks MultiViews</code>
<code> </code><code>Order allow,deny</code>
<code> </code><code>allow from all</code>
<code># ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/</code>
<code># <Directory "/usr/lib/cgi-bin"></code>
<code># AllowOverride None</code>
<code># Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch</code>
<code># Order allow,deny</code>
<code># Allow from 127.0.0.1 localhost 10.1.0.0/24</code>
<code># </Directory></code>
<code> </code><code>ErrorLog </code><code>/var/log/apache2/aaa</code><code>.bbb.com_error.log</code>
<code> </code><code># Possible values include: debug, info, notice, warn, error, crit,</code>
<code> </code><code># alert, emerg.</code>
<code> </code><code>LogLevel warn</code>
<code> </code><code>CustomLog </code><code>/var/log/apache2/aaa</code><code>.bbb.com_access.log combined</code>
<code>Alias </code><code>/jimmy</code> <code>/var/www/ccc/</code>
<code><Directory </code><code>/var/www/ccc/</code><code>></code>
<code>AllowOverride FileInfo AuthConfig Limit Indexes</code>
<code>Options MultiViews SymLinksIfOwnerMatch IncludesNoExec</code>
<code><Limit GET POST OPTIONS PROPFIND></code>
<code>Order Allow,Deny</code>
<code>Allow from 10.0.0.0</code><code>/8</code>
<code>#AuthName "by Restricted Area"</code>
<code>#AuthType basic</code>
<code>#AuthUserFile /etc/apache2/securepw</code>
<code>#require user www61com</code>
<code><</code><code>/Limit</code><code>></code>
<code><LimitExcept GET POST OPTIONS PROPFIND></code>
<code>Order deny,allow</code>
<code>Deny from all</code>
<code><</code><code>/LimitExcept</code><code>></code>
<code><</code><code>/Directory</code><code>></code>
<code><</code><code>/VirtualHost</code><code>></code>
<code>7、创建网站目录ccc</code>
<code>mkdir</code> <code>/var/www/ccc</code> <code>-p</code>
<code>8、创建1个php测试文件 </code>
<code>cat</code> <code>/var/www/ccc/test</code><code>.php</code>
<code><?php</code>
<code>phpinfo();</code>
<code>?>; </code>
<code>9、激活站点</code>
<code>cd</code> <code>/etc/apache2/sites-available</code>
<code>a2ensite aaa.bbb.com </code>
<code>Enabling site aaa.bbb.com.</code>
<code>Run </code><code>'/etc/init.d/apache2 reload'</code> <code>to activate new configuration!</code>
<code>10、修改</code><code>/etc/hosts</code><code>在最后添加二行</code>
<code>cat</code> <code>/etc/hosts</code>
<code>10.1.10.250 aaa.bbb.com</code>
<code>aaa.bbb.com 10.1.10.250</code>
<code>11、根据情况修改php配置文件(可以不修改)</code>
<code>cat</code> <code>/etc/php5/apache2/php</code><code>.ini</code>
<code>expose_php = Off </code><code>#关闭版本号 </code>
<code>display_errors = Off </code><code>#不显示错误 </code>
<code>log_errors on </code><code>#提供错误日志</code>
<code>12、全部配置完后需要重启apache2</code>
<code>/etc/init</code><code>.d</code><code>/apache2</code> <code>restart</code>
<code>13、使用域名访问测试</code>
<code>如果在windows机器上测试的话 可以修改hosts我这边修改过了</code>
<code>访问aaa.bbb.com</code><code>/ccc/test</code><code>.php就可以看到以下图片了</code>
<a href="http://s3.51cto.com/wyfs02/M01/6E/54/wKioL1V5bPbDVAWUAAFL7vJjcNI649.jpg" target="_blank"></a>
<code>二、支持ssl</code>
<code>1、建立ssl目录</code>
<code>mkdir</code> <code>/etc/apache2/ssl</code> <code>-p</code>
<code>2、创建一个证书(时间365天)并填写相关一些信息</code>
<code>openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout </code><code>/etc/apache2/ssl/aaa</code><code>.bbb.com.key -out </code><code>/etc/apache2/ssl/aaa</code><code>.bbb.com.crt </code>
<code>Generating a 2048 bit RSA private key</code>
<code>......+++</code>
<code>....+++</code>
<code>writing new private key to </code><code>'/etc/apache2/ssl/aaa.bbb.com.key'</code>
<code>-----</code>
<code>You are about to be asked to enter information that will be incorporated</code>
<code>into your certificate request.</code>
<code>What you are about to enter is what is called a Distinguished Name or a DN.</code>
<code>There are quite a few fields but you can leave some blank</code>
<code>For some fields there will be a default value,</code>
<code>If you enter </code><code>'.'</code><code>, the field will be left blank.</code>
<code>Country Name (2 letter code) [AU]:cn</code>
<code>State or Province Name (full name) [Some-State]:sh</code>
<code>Locality Name (eg, city) []:shanghai</code>
<code>Organization Name (eg, company) [Internet Widgits Pty Ltd]:aaa</code>
<code>Organizational Unit Name (eg, section) []:aaa</code>
<code>Common Name (eg, YOUR name) []:aaa</code>
<code>Email Address []:[email protected]</code>
<code>3、aaa.bbb.com的ssl域名</code>
<code>cat</code> <code>/etc/apache2/sites-available/aaa</code><code>.bbb.com-ssl</code>
<code><VirtualHost 10.1.10.250:443></code>
<code> </code><code>SSLEngine On</code>
<code> </code><code>SSLCertificateKeyFile </code><code>/etc/apache2/ssl/aaa</code><code>.bbb.com.key</code>
<code> </code><code>SSLCertificateFile </code><code>/etc/apache2/ssl/aaa</code><code>.bbb.com.crt</code>
<code> </code><code><Directory </code><code>/var/www/ccc/</code><code>></code>
<code> </code><code>Options FollowSymLinks +Execcgi</code>
<code> </code><code>AllowOverride None </code>
<code> </code><code>Order deny,allow</code>
<code> </code><code>Deny from all</code>
<code> </code><code>Allow from 10.0.0.0</code><code>/8</code>
<code> </code>
<code> </code><code>ErrorLog </code><code>/var/log/apache2/aaa</code><code>.bbb.com_ssl.error.log</code>
<code> </code><code>CustomLog </code><code>/var/log/apache2/aaa</code><code>.bbb.com_ssl.access.log combined</code>
<code>4、开启ssl模块支持</code>
<code>cd</code> <code>/etc/apache2/mods-available</code>
<code>a2enmod ssl</code>
<code>Enabling module ssl.</code>
<code>See </code><code>/usr/share/doc/apache2</code><code>.2-common</code><code>/README</code><code>.Debian.gz on how to configure SSL and create self-signed certificates.</code>
<code>Run </code><code>'/etc/init.d/apache2 restart'</code> <code>to activate new configuration!</code>
<code>5、开启aaa.bbb.com-ssl站点</code>
<code>a2ensite aaa.bbb.com-ssl </code>
<code>Enabling site aaa.bbb.com-ssl.</code>
<code>6、配置443端口</code>
<code>cat</code> <code>/etc/apache2/ports</code><code>.conf </code>
<code>NameVirtualHost 10.1.10.250:443</code>
<code><IfModule mod_ssl.c></code>
<code> </code><code># SSL name based virtual hosts are not yet supported, therefore no</code>
<code> </code><code># NameVirtualHost statement here</code>
<code> </code><code>Listen 10.1.10.250:443</code>
<code><</code><code>/IfModule</code><code>></code>
<code>7、全部配置完后需要重启apache2</code>
<code>8、查看监听端口</code>
<code>netstat</code> <code>-tupnl |</code><code>grep</code> <code>apache2</code>
<code>tcp 0 0 10.1.10.250:80 0.0.0.0:* LISTEN 5460</code><code>/apache2</code>
<code>tcp 0 0 10.1.10.250:443 0.0.0.0:* LISTEN 5460</code><code>/apache2</code>
<code>9、使用域名访问测试</code>
<code>访问https:</code><code>//aaa</code><code>.bbb.com</code><code>/ccc/test</code><code>.php就可以看到以下图片了</code>
<a href="http://s3.51cto.com/wyfs02/M01/6E/58/wKiom1V5a23ilMvDAAI9kiDVhvY001.jpg" target="_blank"></a>
<a href="http://s3.51cto.com/wyfs02/M02/6E/58/wKiom1V5a4DjLExPAAEABjqJ1ls956.jpg" target="_blank"></a>
<code>三、参考文档</code>
<code>http:</code><code>//httpd</code><code>.apache.org</code><code>/docs/2</code><code>.2/</code>
本文转自 xdoujiang 51CTO博客,原文链接:http://blog.51cto.com/7938217/1660979,如需转载请自行联系原作者