测试PHP安装是否成功的文件,显示不正常,显示成源码内容了。
解决:php.ini这个文件没有复制到WINDOWS目录下。
Mysql 5.7 安装老跳不过去失败的原因 (之前安装过错误,未清除干净,删除后重起服务器)
最主要的是没有安装下面这个支持软件Visual C++ 2013_x64-cn
php7.2 需要Visual C++ 2015_x64-cn 支持
然后运行cmd进入该目录,执行php test.php结果弹出窗口提示:无法启动此程序,因为计算机中丢失 VCRUNTIME140.dll。
尝试重新安装改程序以解决此问题。
原来在Windows下运行php7需要Visual C++Redistributable 2015而之前的版本不需要那么高的,最新版的Apache可能也需要这个组件,这个组件是运行Visual Studio 2015所建立的C++应用的必要组件,安装一次即可解决环境问题,那么去微软官网下载安装程序,安装一遍即可。
有64位版和32位版,根据计算机配置进行下载,下面是下载链接:
64位版下载地址:http://download.microsoft.com/download/9/E/1/9E1FA77A-9E95-4F3D-8BE1-4D2D0C947BA2/enu_INREL/vcredistd14x64/vc_redist.x64.exe
32位版下载地址:http://download.microsoft.com/download/9/E/1/9E1FA77A-9E95-4F3D-8BE1-4D2D0C947BA2/enu_INREL/vcredistd14x86/vc_redist.x86.exe
重点:VC++2012运行库+FASTCGI配置+文件夹权限设置(解压的php目录需要添加读写要限)
小编特别提供已经配置好的三个版本,小白直接下载使用(解压至D盘目录)
下载php-8.0.22-nts-x64版 下载php-8.0.24-nts-x64版 下载php-8.1.10-nts-x64版
原版官网进入PHP.NET网站
1.点击Download
2.选择WINDOWS版本
3.这步很重要。选择下载Non Thread Safe这种版本,这是专为IIS配置的
如何选择Thread Safe和Non Thread Safe版本
Thread Safe是线程安全,执行时会进行线程(Thread)安全检查,以防止有新请求就启动新线程的CGI执行方式而耗尽系统资源。Non Thread Safe是非线程安全,在执行时不进行线程安全检查。
PHP的两种执行方式:ISAPI和FastCGI
ISAPI执行方式是以DLL动态库的形式使用,可以在被用户请求后执行,在处理完一个用户请求后不会马上消失,所以需要进行线程安全检查,这样来提高程序的执行效率,所以如果是以ISAPI方式来执行PHP,建议选择Thread Safe版本;
而FastCGI执行方式是以单一线程来执行操作,所以不需要进行线程的安全检查,除去线程安全检查的防护反而可以提高效率,所以,如果是以FastCGI来执行PHP,建议选择Non Thread Safe版本;
链接地址 https://windows.php.net/downloads/releases/php-5.6.35-nts-Win32-VC11-x64.zip
4、下载VC++2012运行库,这步很重要,前面我全按网上某 些 文章配置了,但是就是用不了,
找了不少文章才发现是需要装这个运行库. Visual C++ 2013_x64-cn
下载地址https://support.microsoft.com/en-us/help/3179560/update-for-visual-c-2013-and-visual-c-redistributable-package
选择Chinese - China版,支持64位
下载安装MYSQL数据库
mysql-installer-community-5.7.21.0
将php解压缩,我这里将解压缩后的文件放在了D盘下,设置读取,写入权限
将php文件中php.ini-production文件重命名为php.ini,并修改php.ini文件
extension_dir = “D:\php-8.0.24-x64\ext”
设置时区
查找date.timezone =
改成
date.timezone = PRC ;设置时区为中国时区
以下是7.0版本的配置
设置.dll文件,将前面的";"取消,这个;符号起到注释作用,如下
(建议手动将;去掉,直接复制我下面的可能会有问题)
extension=php_bz2.dll
extension=php_curl.dll
extension=php_fileinfo.dll
extension=php_gd2.dll
extension=php_gettext.dll
extension=php_gmp.dll
extension=php_intl.dll
extension=php_imap.dll
extension=php_interbase.dll
extension=php_ldap.dll
extension=php_mbstring.dll
extension=php_exif.dll ; Must be after mbstring as it depends on it
extension=php_mysql.dll
extension=php_mysqli.dll
extension=php_oci8_12c.dll ; Use with Oracle Database 12c Instant Client
extension=php_openssl.dll
extension=php_pdo_firebird.dll
extension=php_pdo_mysql.dll
extension=php_pdo_oci.dll
extension=php_pdo_odbc.dll
extension=php_pdo_pgsql.dll
extension=php_pdo_sqlite.dll
extension=php_pgsql.dll
extension=php_shmop.dll
; The MIBS data available in the PHP distribution must be installed.
; See http://www.php.net/manual/en/snmp.installation.php
extension=php_snmp.dll
extension=php_soap.dll
extension=php_sockets.dll
extension=php_sqlite3.dll
extension=php_sybase_ct.dll
extension=php_tidy.dll
extension=php_xmlrpc.dll
extension=php_xsl.dll
以下为7.3版本,内容有点区别
;extension=bz2
extension=curl
;extension=ffi
;extension=ftp
;extension=fileinfo
extension=gd2
;extension=gettext
;extension=gmp
;extension=intl
;extension=imap
;extension=ldap
extension=mbstring
;extension=exif ; Must be after mbstring as it depends on it
extension=mysqli
;extension=oci8_12c ; Use with Oracle Database 12c Instant Client
;extension=odbc
extension=openssl
;extension=pdo_firebird
extension=pdo_mysqle
;extension=pdo_oci
;extension=pdo_odbc
;extension=pdo_pgsql
;extension=pdo_sqlite
;extension=pgsql
;extension=shmop
; The MIBS data available in the PHP distribution must be installed.
; See http://www.php.net/manual/en/snmp.installation.php
;extension=snmp
;extension=soap
;extension=sockets
;extension=sodium
;extension=sqlite3
;extension=tidy
extension=xmlrpc
;extension=xsl
以下是相同的,修改
查找设置以下内容,值等于1
fastcgi.impersonate = 1
Cgi.rfc2616_headers = 1
以下内容,PHP7.3版不用改也可以
查找设置以下内容,值等于0
cgi.force_redirect = 0
查找设置以下内容,默认Off,改成On
short_open_tag = On
到此为止整个php.ini文件就配置好了,保存退出然后再复制到windows 目录下即可
附加,php上传大文件配置
PHP用超级全局变量数组$_FILES来记录文件上传相关信息的。
1.file_uploads=on/off
是否允许通过http方式上传文件
2.max_execution_time=30
允许脚本最大执行时间,超过这个时间就会报错
3.memory_limit=50M
设置脚本可以分配的最大内存量,防止失控脚本占用过多内存,此指令只有在编译时设置了
--enable-memory-limit标志的情况下才生效
4.upload_max_filesize=20M //允许上传文件的最大值,此指令必须小于post_max_size
5.upload_tmp_dir =”” //临时文件保存的目录
6.max_file_uploads = 20 //允许一次上传的最大文件数
7.post_max_size=30M
允许post方式可以接受最大大小
$_FILES['myFile']['name'] 客户端上次文件的原始名称。
$_FILES['myFile']['type'] 文件的 MIME 类型,需要浏览器提供该信息的支持,例如"image/gif"。
$_FILES['myFile']['size'] 已上传文件的大小,单位为字节。
$_FILES['myFile']['tmp_name'] 文件被上传后在服务端储存的临时文件名,一般是系统默认。可以在php.ini的upload_tmp_dir 指定,但 用 putenv() 函数设置是不起作用的。
$_FILES['myFile']['error'] 和该文件上传相关的状态码。['error'] 是在 PHP 4.2.0 版本中增加的。下面是它的说明:(它们在PHP3.0以后成了常量)
UPLOAD_ERR_OK
值:0; 没有错误发生,文件上传成功。
UPLOAD_ERR_INI_SIZE
值:1; 上传的文件超过了 php.ini 中 upload_max_filesize 选项限制的值。
UPLOAD_ERR_FORM_SIZE
值:2; 上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值。
UPLOAD_ERR_PARTIAL
值:3; 文件只有部分被上传。
UPLOAD_ERR_NO_FILE
值:4; 没有文件被上传。
值:5; 上传文件大小为0.
文件被上传结束后,默认地被存储在了临时目录中,这时您必须将它从临时目录中删除或移动到其它地方,如果没有,则会被删除。
也就是不管是否上传成功,脚本执行完后临时目录里的文件肯定会被删除。
附:修改PHP上传文件大小限制的方法
1. 一般的文件上传,除非文件很小.就像一个5M的文件,很可能要超过一分钟才能上传完.
但在php中,默认的该页最久执行时间为 30 秒.就是说超过30秒,该脚本就停止执行.
这就导致出现 无法打开网页的情况.这时我们可以修改 max_execution_time
在php.ini里查找
max_execution_time
默认是30秒.改为
max_execution_time = 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 为佳.
出现问题1.
处理无法访问处理程序映射,提示执行操作时出错。
web.config
这个文件删除就不会,原因出在这具文件配置上。
;--------------------------------------------------------------------------------
安装Drupal8网站管理系统碰到问题
Drupal8内置的缓存系统依赖APC(Alternative PHP Cache)即PHP OPcode caching,它的目标是提供一个自由、 开放,和健全的框架用于缓存和优化PHP的中间代码。没有启用时安装Drupal8会提示PHP OPcode caching未启用
使用windows环境安装的xampp时,默认是没有启用Opcache.so的,需要手动启用,在PHP5.5及后续版本中已经集成了Opcache扩展,
解决方法其实很简单,我们只需要找到PHP配置文件php.ini,搜索[opcache]在下面添加以下代码保存:
zend_extension=D:\php-7.3-nts-x64\ext\php_opcache.dll ;需要添加行
opcache.fast_shutdown=1 ;PHP7.2,7.3版本没有需要添加行
[opcache]
zend_extension=D:\web\php-7.2.4\ext\php_opcache.dll ;需要添加行
opcache.memory_consumption=128 ;搜索代码去掉符号
opcache.interned_strings_buffer=8 ;搜索代码去掉符号
opcache.max_accelerated_files=4000 ;搜索代码去掉符号
opcache.revalidate_freq=60 ;搜索代码去掉符号
opcache.fast_shutdown=1 ;PHP7.2,7.3版本没有需要添加行
opcache.enable_cli=1 ;搜索代码去掉符号
评论