Apache+PHP+Discuz论坛开发环境搭建

Apache2.4安装过程:

1.       以管理员身份运行命令提示符,具体操作方法是,点开始”->“所有程序”->“附件,右键点击命令提示符,选择以管理员身份运行就可以了。

2.       把路径指向Apache文件下bin文件

3.       输入httpd –k install()


4.       安装成功界面:


以上过程是把apache服务安装到windows中

5.       Apache已被成功安装,但配置文件中的ServerRoot为无效路径,所以我们以记事本或其他编辑工具打开cofn下的httpd.conf进行配置

6.       DefineSRVROOT "E:/Server_Core/Apache"

7.       DirectoryIndex index.html改为
DirectoryIndexindex.html index.jsp index.php default.jsp default.php index.html.var

8.       找到#LoadModule ssl_module modules/mod_ssl.so 并在该行后添加:LoadModule php5_module X:/Server_Core/PHP / php5apache2_2.dll

9.       DocumentRoot"E: \www"

10.           <Directory " E: \www ">

11.   在<Directory "${SRVROOT}/cgi-bin"> </Directory>后添加

AddTypeapplication/x-httpd-php .php .phtml .php3 .php4 
AddType application/x-httpd-php-source .phps 

12.   环境配置完成。

13.   Apache的删除:进入安装bin目录后输入sc delete apache2.X

 

 

Apache2.2与2.4权限配置区别

访问控制


2.2,根据客户端的主机名,IP地址,客户端请求的其他特征的访问控制用的指令已完成OrderAllowDeny,和Satisfy

2.4,这样的访问控制以同样的方式与其他授权检查完成后,使用新的模块 mod_authz_host。旧的访问控制成语应该由新的身份验证机制所取代,但为了与旧配置的兼容性,新的模块mod_access_compat提供。

 

2.2 configuration:

Order deny,allow
Deny from all

2.4 configuration:

Require all denied

安装PHP

进入 X:/Server_Core/PHP 文件夹,将 php.ini-dist 重命名为 php.ini ;

一般没有php.ini_dist,一般将php.ini-production修改为php.ini,确保测试环境(本地)与正式环境(线上)一致
php.ini-development 适合开发程式使用(测试用)
php.ini-production 拥有较高的安全性设定,则适合上线当产品使用

2.        打开 php.ini 文件,找到:extension_dir = "./"

将其改为;

extension_dir ="X:/Server_Core/PHP/ext"

3.        找到:Windows Extensions

在 WindowsExtensions 下方的动态模块配置中,需要打开以下模块支持:(去掉模块配置每行前面的;号即可)

extension=php_mbstring.dll

extension=php_gd2.dll

extension=php_mysql.dll

4.    disable_functions=

disable_functions =

改为:

disable_functions=phpinfo,passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server

5.        保存 php.ini 文件,并将其复制到 C:/Windows/

6.       环境搭建完成,重启Apache。IE中输入http://localhost/phpinfo.php,若正常出现php环境变量,成功(特别要注意:红色框框出现的php.ini是C:/Windows/,如果不是就需要你注意了,这个时候需要删除其他路径下面的配置文件,然后重新启动apache。)。

安装MySQL

安装完成mysql之后,为php添加mysql支持

打开php的配置文件php.ini(D:\phpEnv\php\php.ini)

(1)(721行); extension_dir = "ext",去掉前面的“;”,并改为extension_dir="D:\phpEnv\php\ext"打开php的扩展支持,ext文件夹下有很多php的扩展支持.dll文件,感兴趣的同学可以看一下。

(2)然后就是打开php的mysql扩展了

    (875、876行)去掉前面的“;”

        extension=php_mysql.dll

        extension=php_mysqli.dll

安装Discuz论坛

(1)   X:/wwwroot/下面建立bbs目录

(2       将下载好的Discuz610_UC100_GBK.zip打开,

然后把upload下面所有文件拷贝到你的X:/wwwroot/bbs/下面。

(3)       重新启动apache。

(4)       完毕后,在浏览器中运行安装程序(http://localhost/bbs/install)进入准备安装页面.

(5)       验证数据库安装

有些安装不能通过,需要留意下3.3安装mysql这个地方。

恭喜你成功安装了BBS了,这个时候你就可以享受自己的成果了。

由于apache已经占了机器的80端口,如果你原先需要有Tomcat在80端口上跑的就麻烦了,这个时候就需要往下看了,这个时候我们需要整合apache和Tomcat了。

 

和Apache(用不到)



Mod_jk.so下载:在Apache/tomcat官网中找到下载镜像地址,找到binary下载。

http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/windows/选择相应版本下载,并保存在apache的modules目录下面

1.        配置Tomcat:

查找Tomcat目录下的 conf/server.xml文件,在<host></host>中间加入以下语句以修改其默认的目录:

<Context path="" docBase="X:/wwwroot"reloadable="true" crossContext="true"/>

2.        查找Tomcat目录下的conf/workers.properties文件(没有就创建),以以下为标准添加/修改:

workers.tomcat_home=D:/ProgramFiles/Tomcat #让mod_jk模块知道Tomcat的位置
workers.java_home=D:/Program Files/Java/jre1.6.0_07 #让mod_jk模块知道jre的位置
ps=/
worker.list=ajp13 #模块版本
worker.ajp13.port=8009 #工作端口,若没占用则不用修改
worker.ajp13.host=localhost #本机,若上面的Apache主机不为localhost,作相应修改
worker.ajp13.type=ajp13 #类型
worker.ajp13.lbfactor=1 #代理数,不用修改。

对Tomcat的设置进行任何修改后都要重启才可以生效。

3.        配置Apache:

a)        打开E:\Server_Core\Apache\conf下的httpd.conf,在最后加入下面这段代码并保存。

Include conf/extra/mod_jk.conf

打开E:\Server_Core\Apache\conf\extra创建mod_jk.conf文件,内容如下

# 载入mod_jk模块,注意模块文件的路径

LoadModule jk_modulemodules/mod_jk.so

#指定tomcat监听配置文件地址

JkWorkersFile"E:/Server_Core/apache-tomcat-7.0.40/conf/workers.properties"

#指定日志存放位置

JkLogFile"E:/Server_Core/apache-tomcat-7.0.40/logs/mod_jk2.log"

# 声明mod_jk的日志级别(可选)

JkLogLevel info

# 将/*.action和/*.jsp类型的请求都分配给Tomcat,其余类型的有Apache Http Server自己处理

# 注意JkMount后面的ajp13即对应worker.properties文件中worker.list里的worker的名称

JkMount /servlet/* ajp13

#让Apache支持对servlet传送,用以Tomcat解析

JkMount /*.jsp ajp13

#让Apache支持对jsp传送,用以Tomcat解析

JkMount /*.do ajp13

#让Apache支持对.do传送,用以Tomcat解析

 

<Location /jkstatus>

Order deny,allow

Allow from all

</Location>

4.        设置tomcat监听端口,找到下面的内容:

<ConnectorclassName="org.apache.coyote.tomcat4.CoyoteConnector"
 port="8080"minProcessors="5" maxProcessors="75"
enableLookups="true"redirectPort="8443"
acceptCount="100" debug="0"connectionTimeout="0"
useURIValidationHack="false"disableUploadTimeout="true" />

5.        找到以下8009端口的地方,这个很重要,通过8009,tomcat与apache互相通讯,如果下面的部分,被<!-- -->注释掉,一定要把<!-- -->去掉.
<!-- Define a Coyote/JK2 AJP 1.3 Connector on port 8009 -->
<Connector className="org.apache.coyote.tomcat4.CoyoteConnector"
port="8009" minProcessors="5" maxProcessors="75"
enableLookups="true" redirectPort="8443"
acceptCount="10" debug="0" connectionTimeout="0"
useURIValidationHack="false"
protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler"/>

6.        配置httpd.conf文件

这种方法把tomcatapache的根目录设置为同一目录,但是必须限制客户对目录下一些文件的访问,比如存入classweb-inf,在httpd.conf下添加以下代码:
#denythe access to WEB-INF
<Directory ~ "/WEB-INF/"> 

Order allow,deny 
Deny from all 
</Directory> 
 这样,当试图记问http://localhost/web-inf/时,apache将会拒绝.

7.        整合结束

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值