程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> Apache-2.4+Tomcat-7+SSL +VirtualHost+自簽發證書安裝測試

Apache-2.4+Tomcat-7+SSL +VirtualHost+自簽發證書安裝測試

編輯:關於PHP編程

Apache-2.4+Tomcat-7+SSL +VirtualHost+自簽發證書安裝測試



一、安裝依懶軟件包

1、安裝apr軟件包
# wget -c http://ftp.cuhk.edu.hk/pub/packages/apache.org//apr/apr-1.5.2.tar.bz2
#tar -jxvf apr-1.5.2.tar.bz2
#cd apr-1.5.2
# ./configure --prefix=/usr/
#make
# make install

2、安裝apr-util軟件包
# wget http://ftp.cuhk.edu.hk/pub/packages/apache.org//apr/apr-util-1.5.4.tar.bz2
#tar -jxvf apr-util-1.5.4.tar.bz2
#cd apr-util-1.5.4
#cd /usr/local/src/apr-util-1.5.4
#./configure --prefix=/usr/ --with-apr=/usr/
#make
#make install

3、安裝pcre軟件包
#wget -c http://sourceforge.net/projects/pcre/files/pcre/8.37/pcre-8.37.tar.bz2/download
# tar -jxvf pcre-8.37.tar.bz2
#cd pcre-8.37
# ./configure --prefix=/usr/local/
#make
#make install

二、安裝Apache軟件包

#wget -c http://apache.fayea.com//httpd/httpd-2.4.16.tar.bz2
#cd httpd-2.4.16
#./configure --prefix=/usr/local/apache-2.4 --enable-modules=all --enable-mods-shared=all --enable-ssl
#make
#make install

三、開啟ssl支持
1、修改vi httpd.conf 開啟
LoadModule ssl_module modules/mod_ssl.so
LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
Include conf/extra/httpd-ssl.conf


四、生成自簽發證書:
# cd /usr/local/apache-2.4/conf/
#openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -keyout server.key -out server.crt
#根據實際情況填寫國家、組織、地區、公司名生成自簽發證書

五、啟動Aapche軟件測試。。
#/usr/local/apache-2.4/bin/apachectl start
https://訪問, 注意防火牆開啟443端口


六、Apache+Tomcat-7 聯配


1、 安裝JDK 略
# wget http://mirror.bit.edu.cn/apache/tomcat/tomcat-7/v7.0.64/bin/apache-tomcat-7.0.64.tar.gz
# wget http://mirror.bit.edu.cn/apache/tomcat/tomcat-connectors/jk/tomcat-connectors-1.2.41-src.tar.gz
2、安裝Tomcat
# tar -zxvf apache-tomcat-7.0.64.tar.gz
# ln -s tomcat apache-tomcat-7.0.64

3、安裝tomcat-connectors模塊
# tar -zxvf tomcat-connectors-1.2.41-src.tar.gz
# cd tomcat-connectors-1.2.41-src
# ./ buildconf.sh
# ./configure --with-apxs=/usr/local/apache-2.4/bin/apxs --with-tomcat=/usr/local/tomcat --with-java-home=/usr/local/jdk --with-jni
#make
#make install

七、開啟mod_jk模塊

修改vi httpd.conf最後添加如下 開啟 mod_jk module 支持

# Load mod_jk module
LoadModule jk_module modules/mod_jk.so
# Where to find workers.properties
JkWorkersFile /usr/local/apache/conf/workers.proferties
# Where to put jk logs
JkLogFile /usr/local/apache/logs/mod_jk.log

# Set the jk log level [debug/error/info]
JkLogLevel info

# Select the timestamp log format
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "

# JkRequestLogFormat set the request format
JkRequestLogFormat "%w %V %T"

# JkOptions indicate to send SSL KEY SIZE,
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories

# Send servlet for context /examples to worker named worker1
#JkMount /examples/*.jsp worker1
JkMount /servlet/* worker1

# Send JSPs for context /examples to worker named worker1
JkMount /*.jsp worker1

八、新建 workers.proferties 文件

[root@localhost conf]# more workers.proferties
workers.tomcat_home=/usr/local/tomcat
workers.java_home=/usr/local/jdk
ps=/
worker.list=worker1
worker.worker1.port=8009
worker.worker1.host=localhost
worker.worker1.type=ajp13
worker.worker1.connection_pool_timeout=600
worker.worker1.socket_keepalive=1
worker.worker1.lbfactor=1
worker.inprocess.stdout=$(workers.tomcat_home)$(ps)logs$(ps)inprocess.stdout
worker.inprocess.stderr=$(workers.tomcat_home)$(ps)logs$(ps)inprocess.stderr
[root@localhost conf]#

九、Apache+Tomcat+SSL+虛擬主機:

1、修改: httpd-ssl.conf 添加如下虛擬主機

<VirtualHost _default_:443>


# General setup for the virtual host
DocumentRoot "/www/clients/aaa.com/htdocs"
ServerName www.aaa.com:443
ServerAdmin [email protected]
ErrorLog "/www/clients/aaa.com/logs/error_log"
TransferLog "/www/clients/aaa.com/logs/access_log"


<Directory "/www/clients/aaa.com/htdocs">
Options -Indexes +FollowSymlinks
AllowOverride All
Require all granted
DirectoryIndex login.jsp index.jsp
</Directory>


#JkMount /examples/*.jsp worker1
JkMount /servlet/* worker1


# Send JSPs for context /examples to worker named worker1
JkMount /*.jsp worker1




# SSL Engine Switch:
# Enable/Disable SSL for this virtual host.


SSLEngine on


SSLCertificateFile "/usr/local/apache-2.4/conf/server.crt"
SSLCertificateKeyFile "/usr/local/apache-2.4/conf/server.key"


<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory "/usr/local/apache-2.4/cgi-bin">
SSLOptions +StdEnvVars
</Directory>


BrowserMatch "MSIE [2-5]" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0


CustomLog "/usr/local/apache-2.4/logs/ssl_request_log" \
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"


</VirtualHost>




<VirtualHost _default_:443>


# General setup for the virtual host
DocumentRoot "/www/clients/bbb.com/htdocs"
ServerName www.bbb.com:443
ServerAdmin [email protected]
ErrorLog "/www/clients/bbb.com/logs/error_log"
TransferLog "/www/clients/bbb.com/logs/access_log"


<Directory "/www/clients/bbb.com/htdocs">
Options -Indexes +FollowSymlinks
AllowOverride All
Require all granted
DirectoryIndex login.jsp index.jsp
</Directory>


#JkMount /examples/*.jsp worker1
JkMount /servlet/* worker1


# Send JSPs for context /examples to worker named worker1
JkMount /*.jsp worker1




# SSL Engine Switch:
# Enable/Disable SSL for this virtual host.


SSLEngine on


SSLCertificateFile "/usr/local/apache-2.4/conf/server.crt"
SSLCertificateKeyFile "/usr/local/apache-2.4/conf/server.key"


<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory "/usr/local/apache-2.4/cgi-bin">
SSLOptions +StdEnvVars
</Directory>


BrowserMatch "MSIE [2-5]" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0


CustomLog "/usr/local/apache-2.4/logs/ssl_requbbest_log" \
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"


</VirtualHost>


十、添加Tomcat虛擬主機:


1、修改:Tomcat的配置文件 server.xml 添加如下:


<Host name="aaa.com" appBase="webapps" unpackWARs="true" autoDeploy="true">


<Alias>www.aaa.com</Alias>


<Valve className="org.apache.catalina.authenticator.SingleSignOn" />
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="aaa.com_access_log." suffix=".txt"
pattern="%h %l %u %t &quot;%r&quot; %s %b" />

<Context path="" docBase="/www/clients/aaa.com/htdocs"
debug="0" reloadable="true"/>
</Host>




<Host name="bbb.com" appBase="webapps" unpackWARs="true" autoDeploy="true">


<Alias>www.bbb.com</Alias>


<Valve className="org.apache.catalina.authenticator.SingleSignOn" />
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="bbb.com_access_log." suffix=".txt"
pattern="%h %l %u %t &quot;%r&quot; %s %b" />


<Context path="" docBase="/www/clients/bbb.com/htdocs"
debug="0" reloadable="true"/>
</Host>




十一、編寫測試頁面:

[root@localhost htdocs]# pwd
/www/clients/aaa.com/htdocs
[root@localhost htdocs]# more index.jsp
<HTML>
<HEAD>
<TITLE>JSP測試頁面</TITLE>
</HEAD>
<BODY>
<%out.println("<h1>Hello wwww.aaa.com World! </h1>");%>
</BODY>
</HTML>
[root@localhost htdocs]#


[root@localhost htdocs]# pwd
/www/clients/bbb.com/htdocs
[root@localhost htdocs]# more index.jsp
<HTML>
<HEAD>
<TITLE>JSP測試頁面</TITLE>
</HEAD>
<BODY>
<%out.println("<h1>Hello wwww.bbb.com World! </h1>");%>
</BODY>
</HTML>
[root@localhost htdocs]#


十二、啟動: apache、tomcat進行測試
# /usr/local/apache/bin/apachectl start
# /usr/local/tomcat/bin/startup.sh

2、修改本機主機hosts 測試
https://www.aaa.com
https://www.bbb.com

附:優化Tomcat參數:修改:catalina.sh文件 增加如下紅色字
# Set juli LogManager config file if it is present and an override has not been issued
if [ -z "$LOGGING_CONFIG" ]; then
if [ -r "$CATALINA_BASE"/conf/logging.properties ]; then
LOGGING_CONFIG="-Djava.util.logging.config.file=$CATALINA_BASE/conf/logging.properties"
else
# Bugzilla 45585
LOGGING_CONFIG="-Dnop"
fi
fi
JAVA_OPTS="-server -Xms256m -Xmx2048m -XX:PermSize=64M -XX:MaxNewSize=256m -XX:MaxPermSize=512m "

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved