zoukankan      html  css  js  c++  java
  • iis php环境配置完整版

    php配置视频教程:http://www.cnzz.cc/edu/Server/windows/1967.html
    PHP是非常强大的服务器端脚本语言,你将学习在IIS环境下运行PHP语言中php.ini文件配置 。
    本教程:适用于windows xp 2000 2003
    一、解压缩下载的 PHP-5.2.5-Win32.zip 文件,并将其复制到:D:\ServerRoot\PHP (根据你的需要,比如你也可以放到C:\php);

    二、 php.ini文件的选择
      设定有效的 PHP 配置文件,php.ini。压缩包中包括两个 ini 文件,php.ini-dist 和 php.ini-recommended。建议使用 php.ini-recommended,因为此文件对默认设置作了性能和安全上的优化。仔细阅读此文件中的说明并研究 ini 设置 一章来亲自人工设定每个项目。如果要达到最佳的安全效果,则最好用这个文件,尽管 PHP 在默认的 ini 文件下也工作的很好。将选择的 ini 文件拷贝到 PHP 能够找到的目录下并改名为 php.ini。PHP 默认在 Windows 目录下搜索 php.ini:
      在 Windows 9x/ME/XP/2003 下将选择的 ini 文件拷贝到 %WINDIR%,通常为 c:\windows。 (即C:\windows\php.ini)
      在 Windows NT/2000 下将选择的 ini 文件拷贝到 %WINDIR% 或 %SYSTEMROOT% 下,通常为 c:\winnt 或 c:\winnt40 对应于服务器版本。
      如果在 Windows NT,2000 xp或 2003 中使用了 NTFS,确保运行 webserver 的用户名对 php.ini 有读取的权限(例如使其对 Everyone 可读)。
      php.ini -dist 一般用于程序开发。
      php.ini -recommended 用于线上服务使用。

    三、 php.ini文件的修改

        1、查找:extension_dir = "./"改为:extension_dir = "D:\ServerRoot\PHP\ext\"

      2、找到"safe_mode=off"改为"safe_mode=on"
      象一些能执行系统命令的函数shell_exec()和``被禁止,其它的一些执行函数如:exec(), system(), passthru(),popen()将被限制只能执行safe_mode_exec_dir指定目录下的程序。如果你实在是要执行一些命令或程序,找到以下:
      safe_mode_exec_dir =
      指定要执行的程序的路径,如:
      safe_mode_exec_dir = D:\ServerRoot\PHP\
      然后把要用的程序拷到D:\ServerRoot\PHP\目录下,这样,象上面的被限制的函数还能执行该目录里的程序

      3、找到"display_errors=on"改为"display_errors=off"
      一般php在没有连接到数据库或者其他情况下会有提示错误,一般错误信息中会包含php脚本当前的路径信息或者查询的SQL语句等信息,这类信息提供给黑客后,是不安全的,所以一般服务器建议禁止错误提示 。
      display_errors = Off
      log_errors = On
      同时也要设置错误日志存放的目录 找到下面这行
      ;error_log = filename
      去掉前面的;注释,把filename改为指定文件
      error_log = D:/usr/php_error.log

      4、找到"disable_functions="改为:"disable_functions=phpinfo,system,exec,passthru,shell_exec,popen,is_dir".
      我们觉得不希望执行包括system()等在内的能够执行命令的php函数,或者能够查看php信息的phpinfo()等函数,那么我们就可以禁止它们:

      5、查找:magic_quotes_gpc 如果是Off的话改成On 打开magic_quotes_gpc来防止SQL注入。

      6、查找:register_globals (register_globals = Off 修改成register_globals = On)
      在PHP中提交的变量,包括使用POST或者GET提交的变量,都将自动注册为全局变量,能够直接访问,这是对服务器非常不安全的,所以我们不能让它注册为全局变量,就把注册全局变量选项关闭:

      7、查找:open_basedir 后面增加 /www/ /*说明:www为网站程序所放文件*/
      这个选项可以禁止指定目录之外的文件操作,还能有效地消除本地文件或者是远程文件被include()等函数的调用攻击。

      8、expose_php设为off ,这样php不会在http文件头中泄露信息。
      我们为了防止黑客获取服务器中php版本的信息,可以关闭该信息斜路在http头中 。

      9、设置“allow_url_fopen”为“off” 这个选项可以禁止远程文件功能 。

        10、查找字符串“; windows Extensions”,将下列各行行首的分号(;)去掉,根据你网站的需要你可以打开更多
           ;extension=php_dbase.dll  可选
            ;extension=php_mcrypt.dll
        ;extension=php_gd2.dll     此项用以支持GD库的,一般需要,必选
        ;extension=php_ldap.dll   可选
        ;extension=php_mbstring.dll 此项不选则使用PHPMyAdmin会提示错误,必选
        ;extension=php_mssql.dll   此项用以支持MSSQL数据库,可选
        ;extension=php_mysql.dll   此项用以支持MySQL数据库,必选

       11、将php目录和ext目录下的相关dll复制到C:\windows\system32,(包括:php_mbstring.dll、php_mcrypt.dll、php_gd2.dll、php_dbase.dll、php_mysqli.dll、php_mysql.dll、libmysql.dll等)如果你不太要哪些明白,最简单的办法就是全部复制。

    12、修改 short_open_tag = Off 为 short_open_tag = On PHP开启短标记支持

    四. IIS 与 PHP 的整合配置 -新建一个网站

    (1) 启动 IIS 管理器,并新建一个网站(虚拟主机);如图:

    (2) 输入网站名称,改名称仅为 IIS 中的标识,可任意输入。如图:

    (3) 网站IP地址不用填写,端口如没有特殊要求则保持 80 即可,最后正确输入网站域名。如图:

    (4) 在网站分区选择 wwwroot为网站目录。如图:

    (5) 对于 PHP 应用,需要给予该站点"读取"和"运行脚本"的权限。如图:

    (6) 至此,已经成功的新建了一个站点。

    4. IIS 与 PHP 的整合配置 -使站点支持 PHP

    (1) 打开刚刚建立的网站属性,如图:

    (2) 在站点属性窗口中,单击"主目录"页签,单击"配置"按钮,在新弹出的"应用程序配置"对话框中,单击"添加"按钮,加入 PHP 的 ISAPI 支持,选择可执行文件:D:\ServerRoot\PHP\php5isapi.dll 、扩展名为 .php 、限制动作为:GET,POST 。单击"确定"添加,并在"应用程序配置"窗口中查看 .php 扩展是否加载成功。若成功,则单击"确定"关闭配置窗口,回到站点属性主窗口。如图:

    (3) 单击"文档"页签,在默认内容文档中添加 index.htm、index.html、index.php 三个文件,并将所有默认文档排序,顺序尽量靠前。完成后,单击"确定",关闭站点属性配置窗口,回到 IIS 管理器主界面。

    (4) 右键单击"Web 服务扩展",添加 PHP 扩展支持。

    (5) 在如下图所示的"新建WEB服务扩展"对话框中,"扩展名"填写PHP,"文件"选择 D:\ServerRoot\PHP\php5isapi.dll ,并设置该PHP扩展默认为允许。如图:

    (6) 重启 IIS 服务.

    5、测试 PHP 支持是否正常

    IIS与PHP的整合已经完毕,下面需要测试 PHP 支持是否正常。

    (1) 进入 D:\wwwroot\ 目录,新建一个 phpinfo.php 文件,内容为:

    <?php

    phpinfo();

    ?>

    (2) 打开IE浏览器,输入:ht

  • 相关阅读:
    [hihocoder][Offer收割]编程练习赛62
    [laravel]用户异地登录后踢掉之前的登录
    [hihocoder][Offer收割]编程练习赛57
    [hihocoder][Offer收割]编程练习赛58
    线性基
    数组墙 最详细的解题报告
    MySQL中EXPLAIN命令详细解析
    MySQL性能优化
    MySQL中的事务隔离级别
    Java NIO的理解和应用
  • 原文地址:https://www.cnblogs.com/me115/p/2026131.html
Copyright © 2011-2022 走看看