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申请一份经过认证的安 ...
随机推荐
- 编程菜鸟的日记-初学尝试编程-寻找2到n之间的素数并输出
//输入一个整数n,输出2到n之间的具体素数值 #include <iostream> #include <algorithm> #include <cmath> ...
- Java 接口 Comparable
compareTo方法是Comparable接口中唯一的方法.类实现了该接口后表明它的实例具有内在的排序关系.当该对象小于.等于或大于指定对象的时候,分别返回一个负整数.0或者正整数.如果由于指定对象 ...
- CSS Flex布局整理
Flex布局 display: flex; 将对象作为弹性伸缩盒展示,用于块级元素 display: inline-flex; 将对象作为弹性伸缩盒展示,用于行内元素 注意兼容问题: webkit内核 ...
- GMA Round 1 函数求值
传送门 函数求值 设函数$f(x)=x^{2018}+a_{2017}*x^{2017}+a_{2016}*x^{2016}+...+a_{2}*x^2+a_{1}*x+a_{0}$,其中$a_{0} ...
- jQuery 选择同时包含两个或多个class的元素的实现方法
Jquery选择器 多个 class属性参照以下案例 <element class="a b good list card"> 1. 交集选择: $(".a. ...
- PHP 使用POST 获取不到部分数据问题
使用PHP开发的一个项目,在测试阶段客户反馈说数据没有保存成功 而我之前测试是通过的,但按客户的信息上却重现了问题 问题是这样的 客户通过浏览器进行保存,但有些数据已经保存成功,但某些数据却没有保存成 ...
- phpt5支付宝登陆支付接口解析
先看效果图 下面的源码来源网络,自己对照修改. 放入一个插件库中,方便管理 创建支付类 1.发起支付 public function init() { $order_id = $_REQUEST['o ...
- [Vuex] Use Namespaces in Vuex Stores using TypeScript
Even by using modules, they still share the same namespace. So you couldn’t have the same mutation n ...
- mysql存储过程实例,查询多参数赋值
drop procedure if exists p_for_create_customer; create procedure p_for_create_customer()begin declar ...
- CentOS7通过rsync+crontab实现两台服务器文件同步
centos7系统中已经默认安装rsync 1:主服务器配置 (1)修改rsyncd.conf 配置文件 [root@localhost app]# vi /etc/rsyncd.conf motd ...