Windows 7 下PHP环境搭建
??? 有一段时间没有写东西了,这几天弄了点PHP的东西,现在给大家分享个PHP的运行环境搭建,
虽然网上有很多LMAP和WMAP一类的一键安装工具,但是我认为,还是自己动手,才能理解这门语言的运行环境,在以后的开发中更游刃有余。
因为在Linux中开发用得比较少,我下面就本机的Windows 7 系统下安装PHP运行环境给大家做个介绍,分享一下我的成果。
?首先,我们要准备好相关的运行环境安装包,我用的是PHP5.3 + Apache2.2+ MySQL5.5
下载地址分别是:
?
?PHP:http://windows.php.net/downloads/releases/php-5.4.7-Win32-VC9-x86.zip
Apache:http://mirror.bjtu.edu.cn/apache//httpd/binaries/win32/httpd-2.2.22-win32-x86-no_ssl.msi
MySQL:http://cdn.mysql.com/Downloads/MySQL-5.5/mysql-5.5.28-win32.msi
?
这里我仅拿本人PC进行配置,路径是我自己的本机路径,各位可以按照自己实际安装路径进行配置。
?
?
一、我们先来配置Apache(安装步骤就省略了,这个不难)
?
?1、找到Apache安装目录下的conf文件夹,我这里是C:\Program Files (x86)\Apache Software Foundation\Apache2.2\conf,找到httpd.conf文件。这个是Apache的核心配置文件,我们需要增加以下几行:
?
#加载PHP处理模块
LoadModule php5_module "C:/php/php5apache2_2.dll"?
#添加PHP后缀的处理
AddType application/x-httpd-php .php???
PHPIniDir "C:/php"
?
看#号我写的注释大家应该也明白了,先是要加载PHP的处理模块,这样访问Apache的时候它才会调用PHP进行请求处理。
如果在PHP安装包中找不到php5apache2_2.dll,那么说明你下的PHP版本不对
我们在PHP官网看到,PHP分两个版本,一个是VC9 x86 Non Thread Safe ,一个是VC9 x86 Thread Safe ,就是说一个带Apache模块,一个不带Apache模块,这里一定要注意选择带Apache的ZIP包。
?
然后第二句是添加PHP后缀的处理,表示当Apache接收到内容头为application/x-httpd-php 或后缀为.php的文件时,将交给PHPIniDir 下的相关进行处理,这样我们的PHP文件就能通过Apache然后让PHP进行编译了。
?
2、将DocumentRoot 与 Directory 目录均改为网页目录所在路径,其实就是自定义一个工作空间,以后开发PHP都把项目放到这个工作空间下,浏览器访问本地IP就可以浏览所有的PHP项目了,非常方便。
我这里改为
?? DocumentRoot "D:/PHPWorkspace"?
??
??
?
? 大家按自己实际情况改。
?
OK,Apache方面配置完成。
?
二、然后来配置PHP:
?
1、 php.ini
?
将下载好的PHP源包解压到C盘PHP下(这个可以自己放位置,但建议不要放到太深层的目录以及目录名不能包含中文和空格,这可能会让你郁闷到抓狂)。
?
然后找到PHP目录下的php.ini-development文件,这里有两个相似的文件,一个是php.ini-development,一个是php.ini-production,从文件名我们也可以看出来,一个是适合开发用的,一个适合项目发布用的,所以,我们修改php.ini-development这个文件,直接把文件名php.ini后面的删掉(最好先备份),这样就变成了php.ini,嘿嘿,是不是很熟悉呢,对的,我们要的就是这个配置文件。接着打开它,我们要修改的一个是
?
;extension_dir="ext"
?
查找到这句,然后改成
;extension_dir = "C:/php/ext"
?
并且把前面作注释用的? ;?? 号 去掉,就变成了这样
?extension_dir = "C:/php/ext"
?
即ext的本地绝对路径,这个按照自己的实际情况改。
然后还有一个就是让PHP支持MYSQL,很简单,找到??
;extension=php_mysql.dll?
这句,把 ;? 号去掉就OK了。这个不用解释了吧。
?
?
?三、MYSQL(安装步骤省略)
?
前面在PHP.ini 中我们已经配置好了允许PHP使用MYSQL,这里就不需要任何配置了
?,只要保证MYSQL是能正常使用的就OK了
?
四、调试
?
我们在之前定义的工作空间下新建个PHP文件,内容是:
?
$link=mysql_connect('localhost','root','admin');
if(!$link) echo "失败!";
else echo "成功!";
mysql_close();
?>
相信懂PHP的人都看得懂这句话,一句数据库接连代码,然后我们保存,浏览器输入127.0.0.1访问一下,
就可以看到我们刚才新建的PHP文件,点击链接进去如果输出成功, 那么我们的环境就配置成功了。
?
五、常见问题:
?
1,如果运行PHP文件时没有看到网页而是出现下载提示框 ,那么就说明你的PHP文件没有被Apache识别并交给PHP进行处理,这个问题出在Apache的httpd.conf文件中的那三句代码。
2、如果PHP文件能看到网页内容但是显示
????? Fatal error: Call to undefined function mysql_connect() in D:\PHPWorkspace\test.php on line 2
????
???? 那么就表示你的PHP文件已经能被编译,Apache方面已经正常了,问题出在php.ini,没有允许使用MYSQL数据库或是ext目录没有被定位到,即?extension_dir = "C:/php/ext"的问题。
3、记得修改一般修改配置文件的时候都要重启Apache让更改生效。
?
?
?
由于本人也是正在学习的过程中,写的文章技术含量不高,但能记录我学习旅途上的点点滴滴,这些东西仅适合于新手,高手见笑了。??????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????By 小敏
?

绝对会话超时从会话创建时开始计时,闲置会话超时则从用户无操作时开始计时。绝对会话超时适用于需要严格控制会话生命周期的场景,如金融应用;闲置会话超时适合希望用户长时间保持会话活跃的应用,如社交媒体。

服务器会话失效可以通过以下步骤解决:1.检查服务器配置,确保会话设置正确。2.验证客户端cookies,确认浏览器支持并正确发送。3.检查会话存储服务,如Redis,确保其正常运行。4.审查应用代码,确保会话逻辑正确。通过这些步骤,可以有效诊断和修复会话问题,提升用户体验。

session_start()iscucialinphpformanagingusersessions.1)ItInitiateSanewsessionifnoneexists,2)resumesanexistingsessions,and3)setsasesessionCookieforContinuityActinuityAccontinuityAcconActInityAcconActInityAcconAccRequests,EnablingApplicationsApplicationsLikeUseAppericationLikeUseAthenticationalticationaltication and PersersonalizedContentent。

设置httponly标志对会话cookie至关重要,因为它能有效防止XSS攻击,保护用户会话信息。具体来说,1)httponly标志阻止JavaScript访问cookie,2)在PHP和Flask中可以通过setcookie和make_response设置该标志,3)尽管不能防范所有攻击,但应作为整体安全策略的一部分。

phpsessions solvathepromblymaintainingStateAcrossMultipleHttpRequestsbyStoringDataTaNthEserVerAndAssociatingItwithaIniquesestionId.1)他们储存了AtoredAtaserver side,通常是Infilesordatabases,InseasessessionIdStoreDistordStoredStoredStoredStoredStoredStoredStoreDoreToreTeReTrestaa.2)

tostartaphpsession,usesesses_start()attheScript'Sbeginning.1)placeitbeforeanyOutputtosetThesessionCookie.2)useSessionsforuserDatalikeloginstatusorshoppingcarts.3)regenerateSessiveIdStopreventFentfixationAttacks.s.4)考虑使用AttActAcks.s.s.4)

会话再生是指在用户进行敏感操作时生成新会话ID并使旧ID失效,以防会话固定攻击。实现步骤包括:1.检测敏感操作,2.生成新会话ID,3.销毁旧会话ID,4.更新用户端会话信息。


热AI工具

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

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

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

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

热门文章

热工具

SublimeText3汉化版
中文版,非常好用

MinGW - 适用于 Windows 的极简 GNU
这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

安全考试浏览器
Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。

SecLists
SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

适用于 Eclipse 的 SAP NetWeaver 服务器适配器
将Eclipse与SAP NetWeaver应用服务器集成。