Win2008R2+Apache+PHP+Tomcat配置
一、VC运行库
对于Apache和PHP,在Windows上运行的话都需要对应VC运行库的支持,即Apache、PHP和VC运行库这三者的版本必须相对应,这就会带来很多问题,比如下了较新的Apache或PHP,但是找不到对应的和对方连接的VC运行库,此外还要注意系统是32位还是64位。而Linux就没这种破问题,所以我很想不通那些用Windows来做这种较复杂服务器的人脑子里装的是神马。当前常见的VC运行库包括VC9和VC11,x86和x64都装上才保险。可以去http://www.microsoft.com/zh-cn/download/上进行下载。
如果服务器上装了神马安全狗,全都给它退出,否则很可能会报以下错误:
二、Apache代理服务器
这个可以采用较新的Apache 2.4.9,功能更强大一些。下载Apache的话有一个很好的网站http://www.apachelounge.com/download/。
做代理的话,除了要在配置文件httpd.conf中指定ServerRoot和DocumentRoot,还需要指定它的端口为80。此外,要加载proxy对应模块,即将LoadModule proxy_module modules/mod_proxy.so、LoadModule proxy_html_module modules/mod_proxy_html.so、LoadModule proxy_http_module modules/mod_proxy_http.so这三行代码前面的注释“#”去掉,以及启用虚拟主机,即将Include conf/extra/httpd-vhosts.conf前面的注释“#”去掉,这样对应的配置就是在httpd-vhosts.conf里生效了,代码如下:
<VirtualHost *:80>
ServerAdmin crytoll@163.com
ServerName localhost
ProxyRequests Off
ProxyPass / http://127.0.0.1:8081/
ProxyPassReverse / http://127.0.0.1:8081/
ErrorLog "logs/dummy-localhost-error.log"
CustomLog "logs/dummy-localhost-access.log" common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin crytoll@163.com
ServerName 127.0.0.1
ProxyRequests Off
ProxyPass / http://127.0.0.1:8080/
ProxyPassReverse / http://127.0.0.1:8080/
ErrorLog "logs/dummy-127-error.log"
CustomLog "logs/dummy-127-access.log" common
</VirtualHost>
意思就是代理服务器的监听端口是80,如果访问的是localhost,就将请求转发到8081端口;如果访问的是127.0.0.1,就将请求转发到8080端口。
最后为其安装服务,设置自动启动。
此外,有的系统比较奇葩,整体是PHP写的,某个子目录却是JSP写的,比如zsb.xidian.edu.cn,访问它需要转发给Apache解析PHP,但若是访问zsb.xidian.edu.cn/zzzs,就需要转发给Tomcat来解析JSP了。对于这样的系统,需要在同一个VirtualHost里配置两个ProxyPass。需要注意的是,按照Apache的url匹配策略,一旦从前到后匹配成功它就不再继续匹配了,所以子目录的ProxyPass一定要写在前面。配置代码如下:
<VirtualHost *:80>
ServerAdmin crytoll@163.com
ServerName localhost
ProxyRequests Off
ProxyPass /zzzs/ http://127.0.0.1:8080/
ProxyPassReverse /zzzs/ http://127.0.0.1:8080/
ProxyPass / http://127.0.0.1:8081/
ProxyPassReverse / http://127.0.0.1:8081/
ErrorLog "logs/dummy-localhost-error.log"
CustomLog "logs/dummy-localhost-access.log" common
</VirtualHost>
三、PHP
PHP不同版本间的差别还是比较大的,保守起见可选择php-5.3.28-Win32-VC9-x86.msi直接进行安装,安装包在http://windows.php.net/download/上可以找到。
四、Apache解析服务器
考虑到要与PHP进行连接,可以选用httpd-2.2.27-win32-VC9,网上有很多。同样是要在配置文件中指定ServerRoot,令其监听端口为8081,将Include conf/extra/httpd-vhosts.conf前面的注释“#”去掉,其中httpd-vhosts.conf的代码如下:
<VirtualHost *:8081>
ServerAdmin crytoll@163.com
DocumentRoot "C:/WebSite"
<Directory "C:/WebSite">
DirectoryIndex index.php
Order deny,allow
allow from all
</Directory>
ServerName localhost
ErrorLog "logs/dummy-localhost-error.log"
CustomLog "logs/dummy-localhost-access.log" common
</VirtualHost>
意思是本虚拟主机的端口是8081,网站根目录是C:/WebSite,默认主页是index.php。然后需要为Apache解析服务器添加解析PHP文件的功能,即修改 Apache解析服务器的 httpd.conf 文件。在该文件中添加如下2行,表示以模块方式安装PHP进入Apache:
LoadModule php5_module D:/php/php5apache2_2.dll
AddType application/x-httpd-php .php
如图所示:
最后为其安装服务,设置自动启动。
五、JDK
目前既新且较稳定的版本为1.7.53,可以在http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html上下载到。
六、Tomcat
可以选用7.0.53版本,在官网上可以下载到。部署完成后为其安装服务,设置自动启动。而JSP子系统部分为了方便起见,就可以直接放到Tomcat的默认Web目录下
Win2008R2+Apache+PHP+Tomcat配置的更多相关文章
- Apache和Tomcat 配置负载均衡(mod-proxy方式)-粘性session
Tomcat集群配置后端Tomcat Server为支持AJP的独立服务,前端Apache配置为粘性会话(sticky-session),Tomcat不配置Cluster配置和Session复制. 配 ...
- Apache和Tomcat 配置负载均衡(mod-proxy方式)-无session共享、无粘性session
转:https://blog.csdn.net/wangjunjun2008/article/details/38268483 mod-proxy方式实现负载均衡是利用了Apache 2.x版本自带的 ...
- eclipse中web项目部署以后jsp的java文件找不到问题(Tomcat配置serverlocations)
我的开发环境:eclipse kepler (4.3)+tomcat7.0.42. 在我想看eclipse中web项目jsp文件被tomcat转换成java以后的java源文件的位置,发现正常情况下的 ...
- Tomcat集群搭建超详细(apache+mod_jk+tomcat)
TOMCAT集群 目录 TOMCAT集群 1 1 集群 1 1.1 什么是集群 1 1.2 集群的特性 1 1.3 集群的分类 1 1.4 TOMCAT集群配置的优缺点 2 1.5 APACHE+TO ...
- nginx,apache,tomcat配置https的阿里提供的文档
安装证书 ( 1 ) 打开 Nginx 安装目录下 conf 目录中的 nginx.conf 文件,找到 # HTTPS server # #server { # listen 443; # serv ...
- window xp Apache与Tomcat集群配置--转载
转载地址:http://www.cnblogs.com/obullxl/archive/2011/06/09/apache-tomcat-cluster-config.html 一. 环境说明 Win ...
- Linux下Apache与Tomcat的完全分布式集群配置(负载均衡)
最近公司要给客户提供一套集群方案,项目组采用了Apache和Tomcat的集群配置,用于实现负载均衡的实现. 由于以前没有接触过Apache,因此有些手生,另外在网上搜寻了很多有关这方面的集群文章,但 ...
- apache与tomcat负载集群集成方法配置
apache与tomcat负载集群集成方法有3种jk.jk_proxy.http_proxy apache:httpd-2.2.17-win32-x86-no_ssl.msi tomcat:apach ...
- apache Tomcat配置SSL(https)步骤
Tomcat配置https 1 生成Server端安全证书 要实现通信加密,首先要在本地准备一份符合X.509标准的Server端安全证书.如果有条件的话,可以向权威CA申请一份经过认证的安 ...
随机推荐
- Java 多线程 创建线程的4种方式
1 继承Thread类,重写run方法.Thread类实现了Runnable接口. 2 实现Runnable接口,重写run方法.相比于继承Thread类,可以避免单继承的缺陷和实现资源共享. 举例: ...
- windows下安装Mysql—图文详解
mysql安装过程及注意事项: 1.1. 下载: 我下载的是64位系统的zip包: 下载地址:https://dev.mysql.com/downloads/mysql/ 下载zip的包: 下载后解压 ...
- ThreeJS笔记(一)
ThreeJS笔记(一) ThreeJS的本质是WebGL,但是webGL使用起来不是很方便,threeJS则提供了比较上层的封装,开发起来更加轻便. 环境配置 首先从github下载源码 把Thre ...
- GItHub Git 基础教程 常用命令 命令
最近复习了一下Git的使用,简单总结了一些.以供以后查阅和大家参考. 一,安装 首先是Linux下: 打开shell ,输入 sudo apt-get install git-core 之后回车输入密 ...
- SuperWebSocket与Cocos2dx通信时执行不了命令的问题
要修改WebSocketSession.cs 中的方法 string IWebSocketSession.GetAvailableSubProtocol(string protocol) { if ( ...
- idea其他人把jar更新之后更新不到
昨天下午开始就发现这个问题,其他同事把jar更新了之后,我一直获取不到更新之后的内容.尝试了很多方法,删除具体的更新不到的jar,一直不停的mvn clean install -U -Dmaven.t ...
- ASP.NET WebApi 基于分布式Session方式实现Token签名认证
一.课程介绍 明人不说暗话,跟着阿笨一起学玩WebApi!开发提供数据的WebApi服务,最重要的是数据的安全性.那么对于我们来说,如何确保数据的安全将会是需要思考的问题.在ASP.NETWebSer ...
- MySQL DBA工作角色和职责介绍
MySQL DBA分架构DBA,运维DBA和开发DBA三种角色,职责介绍如下:
- jvm理论-运行时数据区
三大流行jvm sun HotSpot ibm j9 BEA JRockit Oracle 会基于HotSpot整合 JRockit. jvm运行时数据区 java虚拟机所管理的内存将会包括以下几个运 ...
- react diff 原理
(1) 把树形结构按照层级分解,只比较同级元素.(2) 列表结构的每个单元添加唯一的 key 属性,方便比较.(3) React 只会匹配相同 class 的 component(这里面的 class ...