当前位置:

首页 > 编程开发 > php 收集,php日常收集

php 收集,php日常收集

IIS+php 不支持mysql的一个问题以及解决 在Windows Server 2003环境下搭建IIS+PHP+MySQL这套经典组合,不少朋友都遇到过一个看似棘手的问题:环境配置好了,PHP也能解析了,但偏偏就是连不上MySQL。折腾了好一阵子,最后发现问题往往出在一个容易被忽略的细节上:忘

IIS+php 不支持mysql的一个问题以及解决

在Windows Server 2003环境下搭建IIS+PHP+MySQL这套经典组合,不少朋友都遇到过一个看似棘手的问题:环境配置好了,PHP也能解析了,但偏偏就是连不上MySQL。折腾了好一阵子,最后发现问题往往出在一个容易被忽略的细节上:忘记将`libmysql.dll`复制到系统目录。下面就来梳理一下完整的配置流程,并重点指出这个关键步骤。

第一步:解开PHP压缩包

将PHP的压缩包解压,建议放在一个简单的路径下,例如`C:\PHP`。

第二步:配置php.ini文件

首先,把`C:\PHP`目录下的`php.ini-dist`文件复制到`C:\WINDOWS`目录下,并重命名为`php.ini`。

接下来,编辑这个`C:\windows\php.ini`文件,需要修改几个地方:

1. 找到`extension_dir`这一行,将其修改为你的PHP扩展目录的实际路径,例如:

; Directory in which the loadable extensions (modules) reside
extension_dir = "C:\PHP\ext"

2. 找到下面这几个扩展模块,将每一行前面的分号`;`去掉(以PHP 5.1.6为例,默认是不支持MySQL的,所以这一步必须做):

extension=php_mysql.dll
extension=php_mbstring.dll
extension=php_gd2.dll

关键一步来了: 将`C:\PHP`目录下的`libmysql.dll`文件,复制到`C:\WINDOWS`或`C:\WINDOWS\system32`目录下。缺少这一步,PHP将无法正常调用MySQL客户端库。

第三步:复制运行时文件

把`C:\php\php5ts.dll`这个文件复制到`C:\windows\system32`目录下。

第四步:配置IIS 6.0

打开控制面板 -> 管理工具 -> Internet服务管理器(IIS管理器)。在左侧树形目录中,点选“Web服务扩展”。在右侧窗口点击“添加一个新的Web服务扩展”。

在弹出的对话框中: - 扩展名填写“PHP”。 - 点击“添加”按钮,在文件路径处填入`C:\PHP\php5isapi.dll`并确定。 - 最后,在Web服务扩展列表中选中新添加的“PHP”,并点击“允许”按钮。

Windows下Nginx的启动、停止等命令

在Windows环境下使用Nginx,掌握几个基本的命令行操作是必不可少的,比如启动、停止服务,或者重新加载配置。下面就来简单介绍一下这些常用命令。

1、启动:

C:\server\nginx-1.0.2>start nginx

或者

C:\server\nginx-1.0.2>nginx.exe

这里有个小建议:通常使用第一种`start nginx`命令,因为它会在后台启动服务。如果直接运行`nginx.exe`,当前的命令行窗口会一直处于执行状态,无法进行其他操作。

2、停止:

C:\server\nginx-1.0.2>nginx.exe -s stop

或者

C:\server\nginx-1.0.2>nginx.exe -s quit

这两者略有区别:`stop`是快速停止Nginx,可能不会保存相关信息;而`quit`则是完整有序地停止Nginx,并会保存好相关信息。

3、重新载入Nginx:

C:\server\nginx-1.0.2>nginx.exe -s reload

当你修改了Nginx的配置文件(如`nginx.conf`)后,不需要重启服务,使用这个命令就能让新配置生效。

4、重新打开日志文件:

C:\server\nginx-1.0.2>nginx.exe -s reopen

这个命令常用于日志切割后,通知Nginx重新打开日志文件进行写入。

5、查看Nginx版本:

C:\server\nginx-1.0.2>nginx -v

或者

C:\server\nginx-1.0.2>nginx -V

注意,`-v`参数只是简单地显示版本号,而`-V`(大写)则会显示更详细的版本信息以及编译时的配置参数。

6、测试或载入指定配置文件:

在修改配置文件后,正式应用前,最好先测试一下语法是否正确:

C:\server\nginx-1.0.2>nginx.exe -t -c conf/default.conf

如果测试成功,会显示“syntax is ok”和“test is successful”。如果需要使用一个非默认的配置文件来启动Nginx,可以这样:

C:\server\nginx-1.0.2>start nginx.exe -c conf/default.conf

Windows下nginx定时分割日志

Nginx的访问日志对于分析网站流量、进行IP/PV统计来说至关重要。然而,Windows版本的Nginx和Linux版一样,默认并不支持按日期自动分割日志。在Linux下,我们通常借助Shell脚本实现,那么在Windows下该怎么办呢?其实,写一个简单的批处理脚本,再结合系统的任务计划,就能轻松搞定。

假设你的日志源文件路径是`d:\data1\logs\www.log`,希望分割后的日志存放到`D:\data1\logs2\`目录下。

新建一个文本文件,将后缀改为`.bat`,内容如下:

taskkill /F /IM nginx.exe
set "cmdstr=move D:\data1\logs\www.log D:\data1\logs2\access_ydgdw_211.138.195.36_log.%date:~0,4%-%date:~5,2%-%date:~8,2%.log
call %cmdstr%"
start nginx

这个批处理脚本依次做了三件事: 1. 强制结束系统中正在运行的`nginx.exe`进程。 2. 将原日志文件移动到新目录,并按照`access_ydgdw_211.138.195.36_log.年-月-日.log`的格式重命名。 3. 重新启动Nginx服务。

将这个批处理文件保存到Nginx的根目录下。然后,打开Windows的“任务计划程序”,添加一个每天(例如凌晨2点)执行一次此脚本的计划任务即可。

需要说明的是,经过测试,在Windows平台下,必须在Nginx服务停止后才能移动或重命名其日志文件,这算是一个小小的限制。不过好在整个停止-备份-重启的过程非常快,通常只需1到2秒,设置在访问量最低的凌晨执行,对服务的影响微乎其微。

关于PHP--->VC9和VC6以及Thread Safe和Non Thread Safe版本选择的问题

访问PHP官网下载Windows版本时,面对VC9 x86 Non Thread Safe、VC9 x86 Thread Safe、VC6 x86 Non Thread Safe、VC6 x86 Thread Safe这四个选项,新手难免会感到困惑。别急,弄清楚下面两个维度的区别,你就能做出正确选择。

一、如何选择PHP5.3的VC9版本和VC6版本

这取决于你使用的Web服务器: - VC6版本:是用老牌的Visual Studio 6编译器编译的。如果你的Web服务器Apache,那么应该选择这个版本。 - VC9版本:是用Visual Studio 2008编译器编译的。如果你的Web服务器IIS,那么请选择这个版本。

二、如何选择PHP5.3的Thread Safe和Non Thread Safe版本

这取决于PHP的运行方式: - Thread Safe (线程安全):在执行时会进行线程安全检查,以防止在多线程环境(如IIS的ISAPI模式)下因创建过多线程而耗尽系统资源。 - Non Thread Safe (非线程安全):在执行时不进行线程安全检查,通常在单线程模式下运行效率更高。

再看PHP的两种主要执行方式: - ISAPI方式:以DLL动态库形式运行,能被多个请求复用,存在于多线程环境中。因此,如果采用ISAPI方式运行PHP(常见于IIS),务必选择Thread Safe版本。 - FastCGI方式:每个PHP进程以单一线程运行,不存在线程安全问题。因此,如果采用FastCGI方式运行PHP(如Nginx+PHP-FPM,或IIS配置为FastCGI模式),选择Non Thread Safe版本能获得更好的性能。

最后提个醒,PHP官方通常不建议在生产环境中使用Non Thread Safe版本。因此,对于大多数通用场景,尤其是初学者或不明确运行模式时,选择Thread Safe版本是更稳妥的做法。

php调试

安装XDebug

Eclipse PDT本身不提供调试器,需要额外配置。通常有两个选择:Zend Debugger或XDebug。考虑到前者依赖于商业产品,这里我们选择完全免费的XDebug。

安装步骤:

1. 将下载到的XDebug模块文件(例如`php_xdebug-2.0.3-5.2.5.dll`)放入PHP的扩展目录(例如`C:\php5\ext`)。

2. 用文本编辑器打开PHP的配置文件`php.ini`(其路径可在Apache配置中指定,通常位于`C:\Windows`目录下),在文件末尾添加以下配置:

[XDebug]
; 请根据你下载的DLL文件名修改下面的路径
zend_extension_ts="C:/php5/ext/php_xdebug-2.0.3-5.2.5.dll"
xdebug.remote_enable=true
xdebug.remote_host=127.0.0.1 ; 如果是远程调试,请填写客户端IP
xdebug.remote_port=9000
xdebug.remote_handler=dbgp
xdebug.profiler_enable=0
xdebug.profiler_output_dir="C:/php5/tmp"

请务必根据你的实际安装路径,修改`zend_extension_ts`和`xdebug.profiler_output_dir`两项的值。

3. 重要提示: 如果你之前安装过Zend Optimizer,必须将其相关配置行注释掉(每行前面加上分号`;`),因为Zend Optimizer与XDebug不兼容。注释后的效果类似这样:

[Zend]
; zend_extension_ts = "C:xamppphpzendOptimizerlibZendExtensionManager.dll"
; zend_extension_manager.optimizer_ts = "C:xamppphpzendOptimizerlibOptimizer"
; zend_optimizer.enable_loader = 0
; zend_optimizer.optimization_level=15
;zend_optimizer.license_path =

4. 保存`php.ini`文件,并重启你的Apache服务器,使配置生效。

5. 最后,创建一个简单的PHP页面,内容为``,在浏览器中访问。如果配置成功,你应该能在输出的页面信息中找到XDebug相关的模块信息,这标志着调试环境已经准备就绪。

本文内容来源于互联网,如有侵权请联系删除。
作者最新文章
编程开发
相关文章 更多
C++动态数组初始化怎么写?常用语句与代码示例
C++动态数组初始化怎么写?常用语句与代码示例

深入解析C++中动态数组的初始化机制,涵盖new操作符的不同用法、基本类型与类对象的初始化差异,以及为何在现代C++开发中应优先使用std::vector。

PHP 在 2026 年还适用吗?
PHP 在 2026 年还适用吗?

PHP在2026年仍适用于现代网站构建,在常规Web服务和内容密集型站点中较Python、Java等保持优势。其JIT编译优化性能,安全补丁及时,全面支持云原生,拥有成熟框架生态,整体成本较低。

DebianPHP如何SSL加密
DebianPHP如何SSL加密

在Debian系统上为PHP配置SSL加密,通常涉及以下几个步骤:安装SSL证书:首先,你需要一个SSL证书。你可以从Let’s Encrypt免费获取,或者购买一个商业证书。使用Let’s Encrypt:sudo apt updatesudo apt install certbotsudo ce

Linux服务器上ThinkPHP如何进行备份
Linux服务器上ThinkPHP如何进行备份

在Linux服务器上,若要使用ThinkPHP框架进行备份,一般会涉及到以下这些方面:数据库备份:使用mysqldump或mysql命令行工具来备份数据库。示例命令:mysqldump -u username -p database_name > backup_database.sql这将生成一个S

Linux服务器上PHP错误日志如何查看
Linux服务器上PHP错误日志如何查看

在Linux服务器上查看PHP错误日志的方法如下:首先,得找到PHP错误日志文件所在的位置。一般来说,它会在/var/log/php或者/var/log/apache2目录下。当然啦,你也可以通过下面这个命令来找到它:php --ini在输出的信息中,找到"ErrorLog"一行,它会显示错误日志文

如何配置PHP以支持Linux下的SSL
如何配置PHP以支持Linux下的SSL

在Linux系统下配置PHP以支持SSL,通常需要以下几个步骤:1. 安装PHP和SSL模块首先,确保你已经安装了PHP以及相关的SSL模块。你可以使用包管理器来安装这些软件包。在Debian/Ubuntu上:sudo apt updatesudo apt install php php-ssl在C

PHP在Linux下如何配置MySQL连接
PHP在Linux下如何配置MySQL连接

在Linux下配置PHP连接MySQL,你需要确保已经安装了PHP和MySQL,并且它们都在运行。接下来,请按照以下步骤操作:安装PHP MySQL扩展:对于PHP 7.x,你需要安装php-mysql扩展。在终端中运行以下命令:sudo apt-get updatesudo apt-get ins

如何配置PHP-FPM以提升网站响应速度
如何配置PHP-FPM以提升网站响应速度

想要通过配置PHP-FPM(FastCGI进程管理器)来加快网站响应速度,需要从多个方面入手,比如调整进程管理参数、优化PHP代码、启用OPcache等等。下面就为大家详细介绍一些关键步骤和实用建议。1. 调整PHP-FPM进程管理参数1.1 增加进程数根据服务器的CPU和内存资源,适当增加PHP-

Linux服务器上PHP如何配置
Linux服务器上PHP如何配置

手把手教你在Linux服务器上配置PHP一 安装与基础检查更新索引并安装所需组件(以 Ubuntu/Debian 为例):安装 Web 与 PHP:sudo apt update && sudo apt install nginx php-fpm php-mysql php-cli php-gd p

Veitool后台框架系统-ThinkPHP版 v2.3.5 已经发布
Veitool后台框架系统-ThinkPHP版 v2.3.5 已经发布

Veitool后台框架ThinkPHP版v2.3.5发布,核心升级至ThinkPHP8.1.4,性能与兼容性提升。集成JWT认证,自动生成令牌及RSA密钥对;新增可选RSA加密传输,增强数据安全;fileLibrary增加复制所选文件链接功能。

查看更多
精品专题 更多
装机必备
装机必备

正软商城装机必备专区,精选办公、浏览器、安全防护、影音播放、压缩解压、设计创作和系统工具等电脑常用正版软件,帮助用户快速完成新电脑软件配置。

Windows
Windows

正软商城Windows软件专区,汇集适用于Windows电脑的办公、设计、安全防护、影音播放、开发工具和系统优化软件,提供软件介绍、系统要求、正版授权及购买下载服务。

macOS软件
macOS软件

正软商城macOS软件专区,精选适用于Mac电脑的办公、设计、影音、效率、开发和系统工具,提供软件功能介绍、macOS兼容版本、正版授权及购买下载服务。

Mac软件 更多
灵活计算器
灵活计算器
macOS/iOS/Android

灵活计算器是一款笔记式算数应用,支持实时计算、动态关联和云端同步功能。记录、整理和输出之间的过渡会更自然,适合长期写作、做笔记或持续沉淀个人内容。

赤友清理大师
赤友清理大师
macOS

赤友清理大师是一款为 Mac 设计的智能清理优化工具,可精准扫描垃圾、大文件、重复文件等,释放磁盘空间。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。

极度公式
极度公式
Windows/macOS/Linux

极度公式是一款跨平台专业LaTeX公式识别编辑软件,支持OCR公式识别和多平台编辑。和使用说明,避免使用,享受完整功能与稳定支持。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。

WINDOWS 更多
Windows 10
Windows 10
Windows

Windows 10 是一款微软推出的经典操作系统,拥有硬件兼容性与多任务处理能力。它更偏向把系统状态查看和常用调节动作放在一起,适合需要持续观察和微调设备状态的场景。

极度公式
极度公式
Windows/macOS/Linux

极度公式是一款跨平台专业LaTeX公式识别编辑软件,支持OCR公式识别和多平台编辑。和使用说明,避免使用,享受完整功能与稳定支持。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。

密码键盘
密码键盘
Windows/macOS/iOS/Android

密码键盘是一款兼具安全性与便捷性的高效密码管理器。日常使用里的持续防护和信息管理会更突出,适合把安全控制放进长期使用流程中的场景。