Windows 2000+Apache+MySql+PHP3+PHP4+PERL安装使用小结
www。1000script.com 2002-9-3 1000script专业脚本
Windows 2000+Apache+MySql+PHP3+PHP4+PERL安装使用小结(一)
这里一定有许多和我一样喜欢尝试新鲜事物的朋友,尤其是当听说
某某软件有了新的版本时一定也会迫不及待的去下载一份回来用用再说。
这里我想和大家探讨一下以下流行软件的应用,意在抛砖引玉。
OS : Microsoft Windows 2000 Professional简体中文版
WEB SERVER: Apache 1.3.12 for WIN32
MYSQL : MySQL Shareware 3.22.34 for WIN32
PHP3 : PHP 3.0.15 for WIN32
PHP4 : PHP 4.0.0 for WIN32
ZEND : Zend Optimizer beta4 for PHP 4.0.0 for WIN32
【★★★ Apache快速安装 ★★★】
1. 运行 apache_1_3_12_win32.exe ,按照提示安装,安装目录不妨为:
c:\apache
2. 修改 c:\apache\httpd.conf,去掉ServerName前的“#”号,后面
跟本机的IP地址
3. 运行 c:\apache\apache -i 将Apache安装成为Windows 2000的一个服务
4. 运行 net start apache 启动Apache
5. 将 c:\apache\htdocs\index.html.en 改名为 index.html ,然后
在浏览器地址栏中输入: http://localhost
【★★★ MySql快速安装 ★★★】
1. 将 mysql-shareware-3.22.34-win.zip 解压缩到一个临时目录下,
然后运行 setup.exe 开始安装,一切用默认值安装即可
2. 运行 c:\mysql\bin\mysqld-shareware --install
将mysql安装成Windows 2000的一个服务
3. 运行 net start mysql 启动mysql服务即可
【★★★ PHP3快速安装 ★★★】
1. 将 php-3.0.15-win32.zip 解压缩到一个目录下,例如
c:\apache\php3
2. 将 c:\apache\php3\php3.ini-dist 拷贝到 c:\winnt 目录下,
并改名为 php3.ini
3. 修改 c:\apache\conf\srm.conf,加入如下几行:
ScriptAlias /php3/ "c:/apache/php3/"
Addtype application/x-httpd-php3 .php3
Action application/x-httpd-php3 "/php3/php.exe"
4. 重新启动Apache (net stop apache, net start apache)
PHP3就可以运行了,创建一个文件 c:\apache\htdocs\info.php3 ,
内容只有一行:
然后在浏览器地址栏中输入:http://localhost/info.php3
5. 为了加入对MySql的支持,需要编辑 c:\winnt\php3.ini ,
找到extension_dir,将该行改为:
extension_dir = "c:\apache\php3\"
再找到
;extension=php3_mysql.dll
去掉前面的分号即可
【★★★ PHP4快速安装 ★★★】
1. 将 php-4.0.0-Win32.zip 解压缩到一个目录下,例如
c:\apache\php
2. 将 c:\apache\php\php.ini-dist 拷贝到 c:\winnt 目录下,
并改名为 php.ini
3. 将 c:\apache\php\php4ts.dll 拷贝到 c:\winnt\system32 目录下
4. 修改 c:\apache\conf\srm.conf ,加入如下几行:
ScriptAlias /php/ "c:/apache/php/"
Addtype application/x-httpd-php .php
Action application/x-httpd-php "/php/php.exe"
5. 重新启动Apache (net stop apache, net start apache)
PHP4就可以运行了,创建一个文件 c:\apache\htdocs\info.php ,
内容只有一行:
然后在浏览器地址栏中输入:http://localhost/info.php
PHP4内置对MySql的支持,不需要额外设置
【★★★ Zend Optimizer for PHP4快速安装 ★★★】
1. 将 ZendOptimizer-Beta4-WindowsNT.zip 解压缩到一个目录下,
例如 c:\apache\zend
2. 修改 c:\winnt\php.ini ,在任何地方加入如下两行:
zend_optimizer.optimization_level=7
zend_extension_ts="c:\apache\zend\ZendOptimizer.dll"
3. 在浏览器中刷新info.php,可以看到多了这么一行:
with Zend Optimizer v0.98, Copyright (c) 1998-2000, by Zend Techno
logies
【★★★ Active Perl快速安装 ★★★】
1. 鼠标双击 ActivePerl-5.6.0.613.msi 运行之,这是一个Windows
Installer Packge格式的安装包,在Windows 2000下可以直接
运行,按照提示安装,默认的安装路径是 c:\perl ,不妨改成
c:\usr
2. 修改 c:\apache\srm.conf ,加入如下一行:
AddHandler cgi-script .pl
3. 在PERL程序的第一行加上:
#!/usr/bin/perl
4. 为了让Apache也能够识别*.cgi程序,在 srm.conf 中加入:
AddHandler cgi-script .cgi
这样一来本地的PERL CGI程序就可以和UNIX主机上的完全保持一致了
为了让Apache能够处理Server Side Include,在 srm.conf 中加入:
AddType text/html .shtml
AddHandler server-parsed .shtml
这样CGI程序就可以以SSI的方式运行了
5. 为了让以上修改生效,需要重新启动Apache (net stop apache, net start
apache)
完全按照以上步骤进行,就会在不出错的情况下拥有了
Apache+MySql+PHP3+PHP4+PERL的运行环境了!事实上,
以上方法在Windos NT4.0+SP3+中一样可行。
【☆☆☆ Apache概要说明 ☆☆☆】
Apache的默认安装目录是c:\program files\apache group\apache,
不过为了方便起见,不妨将它安装到c:\apache目录下。配置文件是
c:\apache\conf\httpd.conf,通常至少需要修改的是ServerName这
一项,把注释符号“#”去掉,最简单是后面跟IP地址,对于有WINS
的局域网用户可以用机器名,对于有DNS的网络用户可以用域名。在
Windows 2000下没有设置ServerName这一项会造成Apache不能启动。
还有一个影响是当用如下方式使用Alias时:
Alias /userdir "c:/userdir/"
假如这样调用:
http://localhost/userdir/
不会产生任何问题,可是如果这样调用:
http://localhost/userdir
那么localhost会被替换成ServerName所指定的值,如果这个值不能
被正确解析,就无法访问。
用户的配置项目添加在httpd.conf或者srm.conf中都可以,一说是将
所有的配置项目都放在httpd.conf中,这样只需要修改维护这一个
配置文件,比较方便,而且避免了冲突(这是srm.conf文件中说的!)。
可是httpd.conf确实太大了,要在里面搜索特定的项目就不很容易。
还有一说是将所有的用户自己添加修改的配置项目都放在srm.conf中,
这个文件很小,便于察看修改,本人倾向于后者。
在httpd.conf中,Apache的其它常用的可能需要修改的设置有:
ServerAdmin your@email.address #管理员的e-mail地址
DocumentRoot "c:/apache/htdocs" #默认的根路径
注意路径全都是用斜线而不是反斜线来分隔
DirectoryIndex index.html index.php index.php3 index.htm index.shtml
这一项指明了在每个目录中的默认文档及其顺序
AccessFileName .htaccess #目录访问的配置文件名
用资源管理器会发现无法将一个文件改名成“.htaccess”,不过
在命令行方式下可以,用notepad也可以另存为这个文件名。
【☆☆☆ MySql概要说明 ☆☆☆】
MySql的默认安装目录是c:\mysql,安装结束后没有任何提示信息说安装结束,请点Finish按钮之类的话,直接就退出了。如果需要安装到其他目录,建议先安装到c:\mysql,然后再整个目录move到自己希望的地方,例如移动到d:\mysql 之后,需要编辑 d:\mysql\my-example.cnf (*.cnf的文件在Windows 2000中会被注册成为 SpeedDial文件,在资源管理器中无法操作,要用命令行来启动notepad编辑,例如运行notepadd:\mysql\my-example.cnf ,但是这个文件是UNIX系统下的文本文件格式,在notepad中不能正确换行,可以用write打开编辑,
或者用write打开后保存一次,再用notepad就可以编辑了。)找到basedir一行,去掉前面的“#”号注释,将后面的路径改为移动后的目录(目录分隔符要用斜线而不是反斜线),然后另存为:c:\my.cnf
用服务方式启动的MySql如果用 net stop mysql 来停止,会得到一条 出错消息,例如:
C:\>net stop mysql
MySql 服务正在停止.
系统出错。
系统发生 1067 错误。
进程意外终止。
MySql 服务已成功停止。
这没有关系,MySql确实已经停止了。但是假如不希望看到任何出错消息
的话,可以用以下的命令来停止:
C:\>mysql\bin\mysqladmin -u root shutdown
如果没有任何提示信息,说明MySql已经成功停止了。
需要说明的是MySql虽然号称安装简单,易于使用,但是这毕竟是基于SQL的数据库管理系统,所以如果不是对SQL十分精通的话恐怕也不能拿它来做什么。网上有许多管理MySql的工具,例如基于PHP3的有phpMyAdmin,MAP,基于Windows的有MySqlWinAdmin,myAdmin等。由于PHP3与PHP4的MySql功能颇多不兼容之处,所以我建议在Apache中同时安装PHP3与PHP4。这两个小程序可以在这里下载:
http://www.nease.net/~yzwang/php/
都只有几十K,而且phpMyAdmin中还包含有简体中文的提示,将 phpMyAdmin_2.0.5.zip 带目录名解压缩到 c:\apache\htdocs目录下,或者其他设定了Alias的目录下,然后编辑文件:c:\apache\htdocs\phpMyadmin\config.inc.php3 在里面找到:
require("english.inc.php3");
一行,将它替换成:require("chinese_gb.inc.php3");
然后保存。在启动它之前还有一件必须要做的事就是编辑 c:\winnt\php3.ini ,
在里面找到 include_path 一行,将它修改为:
include_path = "c:\apache\htdocs\phpmyadmin"
保存后在浏览器地址栏中输入:
http://localhost/phpmyadmin/index.php3
看到没有?它说——〉“欢迎使用 phpMyAdmin 2.0.5” !
【☆☆☆ PHP3概要说明 ☆☆☆】
PHP3似乎没有什么其它需要特殊设定的东西,唯一需要修改的文件就是 php3.in
i 。
上面已经提到要修改的两个部分:
include_path = "c:\apache\htdocs\phpmyadmin;c:\apache\htdocs"
凡是在PHP3中使用了 include 或者 require ,所要包含的文件必须在
include_path 所设定的路径之一,好在修改了php3.ini后会立即生效,
不需要重新启动apache。
extension_dir = "c:\program files\apache\php3\"
这一项也是必需的,否则无法加载扩展模块。
php3.ini中的内容是区分大小写的!不过Windows的路径名大小写没有关系。
【☆☆☆ PHP4概要说明 ☆☆☆】
PHP4与PHP3颇多不同之处,php.ini的大小就比php3.ini大了几乎一倍。
所要修改的项目与php3.ini中的两项一样,include_path 与 extension_dir 。
不过由于内置了MySql的支持,如果只用MySql的话,那么连 extension_dir
也不用修改,保持默认值即可。PHP4提供了两个php.ini的版本可用选择:
php.ini-dist
php.ini-optimized
如果使用 php.ini-dist 的话,那么在使用上没什么问题。可是也许有
好事之徒如我,用了 php.ini-optimized ,那么会遇到重大问题。
大家知道,PHP对于表单的处理极为方便,对于使用了 post 方法的表单,
PHP会自动根据表单的 name 生成同名的变量,几乎所有的PHP程序都是
这样使用自动生成的表单变量的,然而如果将 php.ini-optimized 拷贝
到 c:\winnt 目录下并改名为 php.ini 的话,将没有自动表单变量生成!
仔细看看 php.ini-optimized ,有这么一段:
register_globals = Off ; Whether or not to register the EGP
CS variables as global
; variables. You may want to turn t
his off if you don't want
; to clutter your scripts' global sc
ope with user data. This makes
; most sense when coupled with track
_vars - in which case you can
; access all of the GPC variables th
rough the $HTTP_*_VARS[],
; variables.
为了能够正确运行其他人写的PHP范例程序,建议还是改成:
register_globals = On
其实我使用PHP的经验还不是很多,但是仍然注意到以下几个问题:
1. 在需要包含另外一个文件时可以用 include ,也可以用 require 。
但是要求在 php.ini 中有路径设定。假如包含文件的目的仅仅是为了
在浏览器中显示输出的话,可以用
readfile("filename");
而且参数还可以是 http 或者 ftp 的 URL 。
2. 要获取本文件的文件名,许多人用 $PHP_SELF ,可是我觉得用
getenv("PATH_INFO");
更好。使用的场景例如:
">
3. 要读入整个文件,简单地使用:
$contents=file("filename");
就可以了,$contents 会成为一个 array 变量,文件的每一行会成为
$contents 中的每一项。阵列下标从 0 到 count($contents) 。
【☆☆☆ Zend Optimizer for PHP4概要说明 ☆☆☆】
该软件也可以从以下地址下载,只有41K:
http://www.nease.net/~yzwang/php/
需要注意的就是这个版本是
Zend Optimizer Beta4 for PHP4.0.0 for WindowsNT,版本号是0.98。
只能用在上述的 PHP4.0.0 for WIN32 这个版本上。
【☆☆☆ Active Perl概要说明 ☆☆☆】
Active State的ActivePerl 5.6是目前最流行的最新版本的PERL解释器,不明白为什么要8174K这么大? 几乎是Apache和MySql加起来的大小。不过这是完全版本的PERL,包含有PERL5的各个模块。之所以建议安装到c:\usr 目录下,是由于这样一来PERL的CGI程序就可以用和在UNIX下一样的SHABANG行了:
#!/usr/bin/perl
当然,按照Windows格式用也可以:
#!c:\usr\bin\perl.exe
这样在自己的机器上调试好的PERL程序不用修改就可以上传到UNIX主机上去使用,方便很多。关于PERL的编程问题不在本文讨论的范围之内。
本文旨在抛砖引玉,希望和各地的朋友交流。也希望大家把在使用PHP及其相关环境中的心得写出来与网友们共享,共同进步。
原作者:1000script
来 源:1000script.com

要保护应用免受与会话相关的XSS攻击,需采取以下措施:1.设置HttpOnly和Secure标志保护会话cookie。2.对所有用户输入进行输出编码。3.实施内容安全策略(CSP)限制脚本来源。通过这些策略,可以有效防护会话相关的XSS攻击,确保用户数据安全。

优化PHP会话性能的方法包括:1.延迟会话启动,2.使用数据库存储会话,3.压缩会话数据,4.管理会话生命周期,5.实现会话共享。这些策略能显着提升应用在高并发环境下的效率。

thesession.gc_maxlifetimesettinginphpdeterminesthelifespanofsessiondata,setInSeconds.1)它'sconfiguredinphp.iniorviaini_set().2)abalanceIsiseededeedeedeedeedeedeedto to to avoidperformance andununununununexpectedLogOgouts.3)

在PHP中,可以使用session_name()函数配置会话名称。具体步骤如下:1.使用session_name()函数设置会话名称,例如session_name("my_session")。2.在设置会话名称后,调用session_start()启动会话。配置会话名称可以避免多应用间的会话数据冲突,并增强安全性,但需注意会话名称的唯一性、安全性、长度和设置时机。

会话ID应在登录时、敏感操作前和每30分钟定期重新生成。1.登录时重新生成会话ID可防会话固定攻击。2.敏感操作前重新生成提高安全性。3.定期重新生成降低长期利用风险,但需权衡用户体验。

在PHP中设置会话cookie参数可以通过session_set_cookie_params()函数实现。1)使用该函数设置参数,如过期时间、路径、域名、安全标志等;2)调用session_start()使参数生效;3)根据需求动态调整参数,如用户登录状态;4)注意设置secure和httponly标志以提升安全性。

在PHP中使用会话的主要目的是维护用户在不同页面之间的状态。1)会话通过session_start()函数启动,创建唯一会话ID并存储在用户cookie中。2)会话数据保存在服务器上,允许在不同请求间传递数据,如登录状态和购物车内容。

如何在子域名间共享会话?通过设置通用域名的会话cookie实现。1.在服务器端设置会话cookie的域为.example.com。2.选择合适的会话存储方式,如内存、数据库或分布式缓存。3.通过cookie传递会话ID,服务器根据ID检索和更新会话数据。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

EditPlus 中文破解版
体积小,语法高亮,不支持代码提示功能

ZendStudio 13.5.1 Mac
功能强大的PHP集成开发环境

DVWA
Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中

螳螂BT
Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

mPDF
mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),