由于php是一个zip文件(非install版),安装较为简单
解压就行.把解压的 php-5.2.1-Win32 重命名为 php5.并复制到C盘目录下.即安装路径为 c:\php
1 找到php目录下的 php.ini.recommended (或者php.ini-dist)文件,重命名为 php.ini
并复制到系统盘的windows目录下(以c:\windows为例).
2 再把php目录下的php5ts.dll,libmysql.dll复制到目录 c:\windows\system32下.
3 把php\ext目录下的php_gd2.dll,php_mysql.dll,php_mbstring.dll文件复制到c:\windows\system32下
注意:不要把 php_mysql.dll 和 php_mssql.dll 混淆
如果没有加载 php_gd2.dll php将不能处理图像.没有加载php_mysql.dll php将不支持mysql函数库
php_mbstring.dll在后面使用phpmyadmin时支持宽字符
配置php并关联MySQL
1 设置扩展路径
查找 extension_dir 有这么一行
extension_dir = "./"
将此行改成
extension_dir = "C:\php\ext"
其中C:\php是你安装php的路径.路径不正确将无法加载dll
(注意:有些php版本是 ;extension_dir = "./" 要把前面的分号去掉)
2 分别查找
;extension=php_mbstring.dll
;extension=php_gd2.dll
;extension=php_mysql.dll
把上面3项前面的分号去掉,这样apache启动时就可以加载这些dll了
注意不要把 ;extension=php_mysql.dl 和 ;extension=php_mssql.dl 混淆
当然前面我们也把这些dll复制到system32下了.(大家在安装的过程中都注意到如何把一些dll加载入来了.
以后要加载一些dll,比如说php_mysqli.dll,也就懂得怎么加载了)
3 设置会话保存路径
查找session.save_path 有这么一行
; session.save_path = "N;/path"
在此行后加入一行(注意是加入一行,不是加到后面)
session.save_path = "C:\WINDOWS\Temp"
保存到你的临时目录下,这里完全可以保存到windows临时目录Temp下
4 是否显示错误 display_errors
出于安全性考虑,display_errors 有些版本也默认为 Off.
就是说在调试时,如果php代码有误,就只出现一个空白页.而不会显示出错原因和出错行数.
这样调试起来将非常不便,建议根据自己需要修改
查找
display_errors = Off (注意不是 ; - display_errors = Off [Security])
改成
display_errors = On
5 php5时差问题
时间相差八小时
为什么呢?PHP5系列版本新增了时区设置,默认为格林威治时间,与中国所在的东8区正好相差8个小时
查找date.timezone有这么一行
;date.timezone =
将;去掉,改成
date.timezone = PRC
其中PRC:People's Republic of China 中华人民共和国,
PHP的文件上传问题
文件上传成败关键的几点php.ini配置
文件上传的程序没有错,但php的配置很可能导致文件不能上传成功.
1. 一般的文件上传,除非文件很小.就像一个5M的文件,很可能要超过一分钟才能上传完.
但在php中,默认的该页最久执行时间为 30 秒.就是说超过30秒,该脚本就停止执行.
这就导致出现 无法打开网页的情况.这时我们可以修改 max_execution_time
在php.ini里查找
max_execution_time
默认是30秒.改为
max_execution_time = 0
0表示没有限制
另一种方法是可以在php程序中加入
set_time_limit();
来设定页面最久执行时间.
set_time_limit(0);//0表示没有限制
2. 修改 post_max_size 设定 POST 数据所允许的最大大小。此设定也影响到文件上传。
php默认的post_max_size 为2M.如果 POST 数据尺寸大于 post_max_size $_POST 和 $_FILES superglobals 便会为空.
查找 post_max_size .改为
post_max_size = 150M
3. 很多人都会改了第二步.但上传文件时最大仍然为 8M.
为什么呢.我们还要改一个参数upload_max_filesize 表示所上传的文件的最大大小。
查找upload_max_filesize,默认为8M改为
upload_max_filesize = 100M
另外要说明的是,post_max_size 大于 upload_max_filesize 为佳.
四. active perl 需要安装到c:/perl
五. ZendOptimizer 安装时把 apache 服务器关掉,在过程中要指定 apache 和 php 的安装路径一
一、下载php-5.2.11-Win32.zip,解压到D:\php。
二、右击我的电脑>属性>高级>系统变量,双击Path变量,在弹出窗口的变量值字段前加D:\php;D:\php\ext;
三、修改php.ini,去掉下面扩展前面的注释。
extension=php_bz2.dll
extension=php_curl.dll
extension=php_dba.dll
extension=php_dbase.dll
extension=php_gd2.dll
extension=php_mbstring.dll
extension=php_mcrypt.dll
extension=php_mysql.dll
extension=php_zip.dll
四、修改php.ini,改extension_dir = "./"为extension_dir = "D:/php/ext"
五、修改php.ini,实现php上传文件.改;upload_tmp_dir =为upload_tmp_dir ="D:\php\tmp\upload"
六、修改php.ini,改;session.save_path = "/tmp"为session.save_path = "D:\php\tmp\session"
七、修改php.ini,改soap.wsdl_cache_dir="/tmp"为soap.wsdl_cache_dir="D:\php\tmp\soap"
八、(可选修改)修改php.ini中,short_open_tag、asp_tags的值为on,
那样输入php代码时就可以用...?>和,php5为了规范,默认是关闭,只支持。
九、拷贝php.ini到C:\windows\文件夹,拷贝D:\php\目录下的libmysql.dll到c:\windows\system32\文件夹。
十、IIS管理器中,网站属性>主目录>应用程序配置>映射,添加php扩展名映射。
可执行文件:D:\php\php5isapi.dll
扩展名:.php
九、重启IIS服务。最好重启服务。
十、查看系统日志,有没出错。并查看php的mysql扩展有没打开。下面代码存成phpinfo.php,显示mysql等扩展正常打开。
注:当此时在IIS里浏览php文件时如果出现404错误,请查看IIS中“WEB服务扩展>所有未知ISAPI扩展”是否为“允许”,如果为“禁止”请调整。
转自:http://hi.baidu.com/hiran/blog/item/1a65f53f9fb211e655e7234f.html

PHPSession失效的原因包括配置錯誤、Cookie問題和Session過期。 1.配置錯誤:檢查並設置正確的session.save_path。 2.Cookie問題:確保Cookie設置正確。 3.Session過期:調整session.gc_maxlifetime值以延長會話時間。

在PHP中調試會話問題的方法包括:1.檢查會話是否正確啟動;2.驗證會話ID的傳遞;3.檢查會話數據的存儲和讀取;4.查看服務器配置。通過輸出會話ID和數據、查看會話文件內容等方法,可以有效診斷和解決會話相關的問題。

多次調用session_start()會導致警告信息和可能的數據覆蓋。 1)PHP會發出警告,提示session已啟動。 2)可能導致session數據意外覆蓋。 3)使用session_status()檢查session狀態,避免重複調用。

在PHP中配置會話生命週期可以通過設置session.gc_maxlifetime和session.cookie_lifetime來實現。 1)session.gc_maxlifetime控制服務器端會話數據的存活時間,2)session.cookie_lifetime控制客戶端cookie的生命週期,設置為0時cookie在瀏覽器關閉時過期。

使用數據庫存儲會話的主要優勢包括持久性、可擴展性和安全性。 1.持久性:即使服務器重啟,會話數據也能保持不變。 2.可擴展性:適用於分佈式系統,確保會話數據在多服務器間同步。 3.安全性:數據庫提供加密存儲,保護敏感信息。

在PHP中實現自定義會話處理可以通過實現SessionHandlerInterface接口來完成。具體步驟包括:1)創建實現SessionHandlerInterface的類,如CustomSessionHandler;2)重寫接口中的方法(如open,close,read,write,destroy,gc)來定義會話數據的生命週期和存儲方式;3)在PHP腳本中註冊自定義會話處理器並啟動會話。這樣可以將數據存儲在MySQL、Redis等介質中,提升性能、安全性和可擴展性。

SessionID是網絡應用程序中用來跟踪用戶會話狀態的機制。 1.它是一個隨機生成的字符串,用於在用戶與服務器之間的多次交互中保持用戶的身份信息。 2.服務器生成並通過cookie或URL參數發送給客戶端,幫助在用戶的多次請求中識別和關聯這些請求。 3.生成通常使用隨機算法保證唯一性和不可預測性。 4.在實際開發中,可以使用內存數據庫如Redis來存儲session數據,提升性能和安全性。

在無狀態環境如API中管理會話可以通過使用JWT或cookies來實現。 1.JWT適合無狀態和可擴展性,但大數據時體積大。 2.Cookies更傳統且易實現,但需謹慎配置以確保安全性。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

SAP NetWeaver Server Adapter for Eclipse
將Eclipse與SAP NetWeaver應用伺服器整合。

SublimeText3 Linux新版
SublimeText3 Linux最新版

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能