php.ini环境配置参考方案

 更新时间:2016年11月25日 15:29  点击:1249
本文章介绍了关于php.ini环境配置参考方案,对很多朋友都会有帮助的,我知道包括我在内很多时候都让php.ini是默认的,今天参考一下本文章处理一下吧。

全攻略其实是个夸张的说法,我们只讨论一些对我们一般开发期间会产生影响的几个配置,其他的问题就交给服务器的管理人员来做吧——我们不是网络管理员,不用替他们操心,总要是使他们的工作有些内容是不是?

 代码如下 复制代码
extension_dir = “/path/to/php”

存放扩展库(模块)的目录,也就是PHP用来寻找动态扩展模块的目录,这个通常在php安装目录下边的ext目录(php5之前可能文件名称有些不同),这个目录在windows版本的PHP中存放的是好多.dll文件例如php_gd2.dll,php_mysql.dll等,这个对我们很重要。按照正确的路径修改一下吧,一般写绝对路径例如:d:php5ext

 代码如下 复制代码
error_reporting = E_ALL & ~E_NOTICE

设置错误报告的级别,推荐使用 E_ALL | E_STRICT,包含代码标准话警告的所有错误,这样有利于我们一开始写出的代码都是标准化的代码,呵呵……

关于错误报告还有一个地方需要注意

 代码如下 复制代码
display_errors = On

如果设置为On页面会显示错误报告,如果设置为Off即使设置了错误报告的级别,你也看不到错误信息。作为程序员,没有比明知道程序出了问题,而不知道除了什么问题更加头疼的了。

 代码如下 复制代码
max_execution_time = 30

允许单个程序脚本占用服务器的最大时间,单位是秒,这样可以避免不经意间写出一个死循环或者什么程序,长期占用服务器而把服务器累死。如果设置值为0表示不限制运行时间。

 代码如下 复制代码
memory_limit = 16M

单个程序脚本可以占用的最大内存数,设置为-1表示为不限制

 代码如下 复制代码
max_input_time = -1

单个脚本解析输入数据(POST, GET, upload)的最大允许时间(秒),设置为-1 表示不限制。

 代码如下 复制代码
post_max_size = 8M

允许的POST数据最大字节长度。此设定也影响到文件上传。 要上传大文件,该值必须大于upload_max_filesize指令的值。
如果启用了内存限制,那么该值应当小于memory_limit指令的值。

 代码如下 复制代码
upload_max_filesize = 2M

允许上传的文件的大小,默认是两兆,如果需要上传大于2M的文件就要修改这里,当然需要关联修改memory_limit和post_max_size的值。

 代码如下 复制代码
upload_tmp_dir =

文件上传时存放文件的临时目录,这个目录必须针对PHP进程可写, 如果未指定则PHP使用系统默认的临时目录

 代码如下 复制代码
magic_quotes_gpc = On

是否对输入的GET/POST/Cookie数据使用自动字符串转义( ‘ ” NULL ),一般设置为On,但是在实际的编程环境中,不要依赖这个设置。一般需要判断之后对数据进行处理,看下代码
……

 代码如下 复制代码

if (!get_magic_quotes_gpc()) { //判断该设置是否为On
$lastname = addslashes($_POST['lastname']);//不为On手工转义
} else {
$lastname = $_POST['lastname'];//否则直接使用
}
……

register_globals = Off

这个在PHP6中已经删除的设置,我就不多说了,一定要设置为Off啊!

[mbstring]模块

这个模块儿时针对中文,韩文,日文等双字节字符的一个扩展。下边的这些设置通常都是关闭,如果要启用这些扩展,请去掉前面的“;”。但是这些设置有点太个性化了,建议还是不要设置的好,遇到中文截取或者测长什么的,到网上找个别人写的程序就行了。

 代码如下 复制代码
mbstring.language = “neutral”

默认值”neutral”表示中立,相当于未知, “zh-cn”或”Simplified Chinese”表示简体中文, “zh-tw”或”Traditional Chinese”表示繁体中文
……
剩下的不想说了,真的有需要的话,再说吧,可以联系我或者到首页右侧上方公布的群号里问问吧。

启用扩展模块实例

 代码如下 复制代码

extension=php_gd2.dll,启用gd库扩展,这个用于生成图片的

extension=php_mysql.dll

,启用Mysql数据库扩展,只有启用了这个PHP才有可能链接上Mysql数据库,吧这两行前面的分号去掉(或者直接把这两行加入ini设置),就表示启用了。

文章介绍了在自己做环境时发现php 无法加载mysql 的module 配置,现在根据问题我们来找解决方法及由解决方法引起的一些小问题。
今天配置php 的时候,发现没配起mysql ,wordpress提示我需要 mysql 的module
之后上google搜索,大多数都是说php.ini 没加载起
之后看phpinfo() 里  确实也没找到mysql 模块,
 
之后所谓的解决方案如“将php.ini” 放入C:Windows  环境变量等不靠谱说法。。。。。
甚至拷贝ext的文件夹的dll 到System32 中等
统统不靠谱   直到看到这篇帖子,我才发现问题

 

“mysql无法找到的原因是mysql的运行库无法找到,打开mysql的安装文件夹,在bin文件夹中找到libmySQL.dll,将它复制到system32文件夹中,让mysql的运行库能在系统中注册,然后重启Apache”

我是在MySQLMySQL Server 5.5lib目录里找到的
实际上在自己配置的时候应该发现不是环境变量或者是没有加载到php.ini 或者没加载到extension的 
为什么这么说呢  
首先,在Apache  的配置中  已经添加了php的配置路径
image
同时phpinfo()也显示的加载到了,有兴趣的同学可以试试php.ini  存在和不存在的时候的区别
 
image
 
其次,自己在php.ini里确实配置了extension_dir 的,如果这个东西没意义,那何必在配置文件里有这个选项?之后这里注意一下,他的分隔符和apache 刚好相反   是“”
image 
之后php 也顺利加载了 
 
image
 
所以,其实完全可以避免自己跟着瞎折腾的,结果大意了。

利用rpm包安装、配置及卸载mysql教程的详细过程.


通过rpm包安装、配置及卸载mysql的详细过程.


以MySQL-server-4.0.14-0.i386.rpm为例,放在/data目录下


cd /data


rpm -ivh MySQL-server-4.0.14-0.i386.rpm


安装完成后在/usr/share/mysql目录中会有一个mysql的启动脚本mysql.server及示例配置文件等(如my-huge.cnf、my-large.cnf、my-medium.cnf)


拷贝一个示例配置文件作为mysql的配置文件:


cp /usr/share/mysql/my-medium.cnf /etc/my.cnf


rpm包安装完后自动将mysql安装成系统服务,所以可以使用下面命令启动、停止mysql


启动mysql


/etc/init.d/mysql start 或 service mysql start


停止mysql


/etc/init.d/mysql stop 或 service mysql stop


到此,mysql服务就安装配置完成。


安装mysql客户端


rpm -ivh MySQL-client-4.0.14-0.i386.rpm


mysql安装好后目录结构如下:


工具程序在/usr/bin目录中---ls /usr/bin/mysql*


服务器程序/usr/sbin/mysqld


数据目录/var/lib/mysql


默认情况下mysql将错误日志文件、二进制日志文件及进程文件写在/var/lib/mysql目录中,如localhost.err、localhost.pid、localhost-bin.001等


要改变这些情况可以修改/etc/my.cnf文件


如将日志文件写在/var/log目录中,可以在my.cnf文件中加入下面两行:


[mysqld_safe]


err-log = /var/log/mysqld.log


有个实用程序/usr/bin/mysql_install_db,该程序可以用来初始化mysql数据库教程,即创建/var/log/mysql目录,及创建mysql数据库(mysql授权表等信息)及test数据库(空库),如果不小心删除了/var/log/mysql目录可以通过该程序来初始化.


卸载mysql


rpm -qa|grep -i mysql


rpm -ev MySQL-server-4.0.14-0 MySQL-client-4.0.14-0


卸载后/var/lib/mysql中的数据及/etc/my.cnf不会删除,如果确定没用后就手工删除


rm -f /etc/my.cnf


rm -rf /var/lib/mysql

 

下载PHP5:    php教程.net/distributions/php-5.2.6-Win32.zip" target="_blank">http://cn2.php.net/distributions/php-5.2.6-Win32.zip
下载apache:  http://down.chinaz.com/soft/18000.htm


一.php的安装与调试
        由于php是一个zip文件(非install版),安装较为简单,解压就行。把解压的 php5.2.1-Win32重命名为 php5。并复制到C盘目录下。即安装路径为 c:php5
1     找到php目录下的 php.ini-dist或 php.ini.recommended文件,重命名为 php.ini
并复制到系统盘的windows目录下(以c:windows为例).
2     再把php目录下的php5ts.dll,libmysql教程.dll复制到目录 c:windowssystem32下。
3     把php5ext目录下的php_gd2.dll,php_mysql.dll,php_mbstring.dll文件复制到c:windowssystem32下
如果没有加载 php_gd2.dll     php将不能处理图像。没有加载php_mysql.dll php将不支持mysql函数库
php_mbstring.dll在后面使用phpmyadmin时支持宽字符。
4 打开c:windowsphp.ini文件(关联到mysql)
设置扩展路径
查找 extension_dir 有这么一行extension_dir = "./"
将此行改成
extension_dir = "C:php5ext"
其中C:php5是你安装php的路径。路径不正确将无法加载dll
(注意:有些php版本是 ;extension_dir = "./" 要把前面的分号去掉)
查找 extension
extension=php_mbstring.dll
extension=php_gd2.dll
extension=php_mysql.dl
把上面3项前面的分号去掉,这样apache启动时就可以加载这些dll了
当然前面我们也把这些dll复制到system32下了l
php5时差问题
<?php echo date("Y-m-d H:i:s");?>时间相差八小时
为什么呢?PHP5系列版本新增了时区设置,默认为格林威治时间,与中国所在的东8区正好相差8个小时
查找date.timezone有这么一行
;date.timezone =
将;去掉,改成
date.timezone = PRC
二.apache的调试和整合
1.修改网站根目录
      查找 DocumentRoot有这么一行
DocumentRoot"C:/Program Files/Apache Group/Apache2/htdocs"
这就是你网站的根目录,你可以修改,也可以用默认的.如果改,还要修改下面这项,否则可能会出现 403 错误
查找     This should be changed to whatever you set DocumentRoot to
在它下面两行有
<Directory "C:/Program Files/Apache Group/Apache2/htdocs">
把上面两项的 C:/Program Files/Apache Group/Apache2/htdocs 改成你想要的目录
2.让apache支持*.php(网页)
查找     DirectoryIndex index.html index.html.var
修改成
DirectoryIndex   index.html index.html.var   index.php 
这样index.php 可以充当默认页面了
3.Apache中模块化安装php
查找 # LoadModule foo_module modules/mod_foo.so
在此行后加入一行
LoadModule php5_module C:/php5/php5apache2.dll          //注意:其中C:/php5/php5apache2.dll是你安装php的相应路径.不要把php5apache2.dll和php5apache.dll混淆.php5apache.dll只适用于apache 版本1的.PHP5压缩包里的php5apache2.dll只适用于apache2.0.*版本,如果是2.2.*以上版本,就可能会出现"Cannot load C:/php/php5apache2.dll into server: The specified module could not be found."或者:"The requested operation has failed"
4.查找 AddType application/x-gzip .gz .tgz
在此行后加入一行
AddType application/x-httpd-php .php (记住:前边有一个空格哦!!!)
这样apache就可以解释php文件了
5.测试
在网站根目录下创建一个 phpinfo.php 文件

<?php
phpinfo();
?>

在浏览器打开
http://localhost/phpinfo.php
5.测试php和mysql数据库教程的关联
在网站根目录下创建一个test.php 文件

<?php
$link=mysql_connect("localhost","root","12345");     //12345改成你的mysql密码
if(!$link) echo "失败!";
else echo "成功!";
mysql_close();
?>

在浏览器打开 http://localhost/test.php
如果输出成功,则说明大功告成了

今天我就在Windows平台下搭建PHP的调试和开发环境。如果有写的不好的请谅解。

   一、总的大概步骤如下

   1、下载资料
      1)、下载wamp
      2)、下载开发工具ZendStudio

   2、安装程序
      1)、安装wamp
      2)、安装开发工具ZendStudio

   3、配置环境
  
   4、PHP调试

   5、PHP开发环境

二、步骤详细介绍

  1、下载资料
      1)、下载WAMP

         所谓WAMP,是指在Windows系统(W)下安装Apache网页服务器(A)以及MySQL数据库教程(M)和PHP脚本引擎(P)而搭建起来的PHP网络服务器环境,当然,在LAMP环境肯定是比WAMP环境要好的,可是由于Windows的易用性,所以,我们在做前期开发或者测试某些CMS的时候,使用WAMP环境甚至很方便更实用一些。WAMP即这些单个软件共同组成了一个强大的Web应用程序平台。

     下载WAMP最新帮Wamp5 http://9.scdx1.crsky.com/200711/WAMP5-v1.7.4.rar


      2)、下载开发工具ZendStudio

         Zend Studio是PHP 集成开发环境,具备功能强大的专业编辑工具和调试工具,支持PHP语法加亮显示,支持语法自动填充功能,支持书签功能,支持语法自动缩排和代码复制功能,内置一个强大的PHP代码调试工具,支持本地和远程两种调试模式,支持多种高级调试功能。 

  •  windows版 Zend Studio 8.0.1 正式版官方下载地址:http://downloads.zend.com/..ZendStudio-8.0.1.msi 

   2、安装程序
      1)、WAMP 安装步骤图解

把WAMP下载到

选择WAMP安装路径,也可以默认路径。

SMP服务器地址

PHP 邮件服务器默认Email

设置启动浏览器。

安装完成,显示图片。

   3、配置环境

安装完成后默认是英文。

设置WAMP语言。您可以设置其他的语言,当然我们设置为Chinese(中文)

WAMP重启以后就为中文了。您就可以通过WAMP去配置PHP环境了。

添加一个Alias目录,(就像在IIS上配置一个虚拟目录)

添加一个Alias目录名称。

设置Alias目录名称指向的物理路径。

 4、PHP调试

  

在C:wampphp教程Demo文件夹中添加Index.php文件,这时就可以在index.php 编写PHP代码了。

在浏览器地址栏中输入:Http://localhost/ 如果能看到上图PHP服务器配置相关信息,说明您的PHP服务器配置成功。

你可以直接访问http://localhost/Demo 就可以查看刚才编写的index.php程序。显示页面执行的结果。

  2)、PHP开发工具ZendStudio安装图解

Zend Studio安装过程很简单,点击“Next”、“Next"基本就可以搞定。

安装完成后,你就可以添加一个PHP项目,编写你的PHP网站。在创建PHP项目时,要填写项目名称和保持路径。

这是你就可以在项目中添加PHP文件。编写PHP页面。

 5、PHP开发环境

点击运行,就可以在Zend Studion IDE中浏览PHP页面执行的内容。


如果PHP在编写中有错误,运行时就可以清楚的PHP文件中的第多少行出了错误。调试也非常方便。

[!--infotagslink--]

相关文章

  • IntelliJ IDEA2021.1 配置大全(超详细教程)

    这篇文章主要介绍了IntelliJ IDEA2021.1 配置大全(超详细教程),需要的朋友可以参考下...2021-04-18
  • Windows VPN服务器配置图文教程 超详细版

    VPN可以虚拟出一个专用网络,让远处的计算机和你相当于处在同一个局域网中,而中间的数据也可以实现加密传输,用处很大,特别是在一些大公司,分公司处在不同的区域。...2016-01-27
  • Tomcat配置及如何在Eclipse中启动

    这篇文章主要介绍了Tomcat配置及如何在Eclipse中启动,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-02-04
  • Laravel4安装配置的方法

    如果我们需要安培Laravel4的话最php最低要求要在php5.3.7版本并且我们需要把mcrypt与openss这两个扩展开启才可以,具体步骤我们参考下文。 前面我们介绍我了 com...2016-11-25
  • 详解Maven profile配置管理及激活profile的几种方式

    这篇文章主要介绍了详解Maven profile配置管理及激活profile的几种方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-01-26
  • IDEA如何添加配置文件到classpath中

    这篇文章主要介绍了IDEA如何添加配置文件到classpath中,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-09-19
  • 查找php配置文件php.ini所在路径的二种方法

    通常php.ini的位置在:复制代码 代码如下:/etc目录下或/usr/local/lib目录下。如果你还是找不到php.ini或者找到了php.ini修改后不生效(其实是没找对),请使用如下办法:1.新建php文件,写入如下代码复制代码 代码如下:<?phpe...2014-05-31
  • 部署PHP时的4个配置修改说明

    以下就是部署PHP时的4个配置修改说明,大家一个一个进行学习研究。1、short_open_tag 是什么呢? 决定是否允许使用代码开始标志的缩写形式(<&#63; &#63;> )。如果要和 XML 结合使用PHP,可以禁用此选项以便于嵌入使用<&#63;x...2015-10-21
  • 华为畅享20Pro配置怎么样?华为畅享20Pro参数配置分析

    华为畅享20Pro配置怎么样?对于即将上市的华为畅享20 Pro手机,很多的网友们也是相当关注的,大家都想要知道这款华为畅享20 Pro手机的配置到底怎么样,赶紧看看吧...2020-06-29
  • Vue-Router的routes配置详解

    在使用vue-router的项目中,实例化VueRouter是其配置选项routes该选项指定路由与视图的组件的关系或者路由与其他路由的关系,Router配置选项中是其中最重要的配置。本文就详细的介绍一下...2021-10-25
  • 详解element-ui 表单校验 Rules 配置 常用黑科技

    这篇文章主要介绍了element-ui 表单校验 Rules 配置 常用黑科技,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-07-11
  • tomcat9 下载安装和配置+整合到eclipse的教程详解

    这篇文章主要介绍了tomcat9 下载安装和配置+整合到eclipse,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-07-28
  • pytest配置文件pytest.ini的详细使用

    这篇文章主要介绍了pytest配置文件pytest.ini的详细使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-04-17
  • 小记一次mysql主从配置解决方案

      今天研究了个开源项目,数据库是mysql的,其中的脚本数据需要备份,由于本人的机器时mac pro,而且mac下的数据库连接工具都不怎么好用,就想着如何利用windows下的数据库连接工具使用,并做相关备份,另外windows系统下的sqlyo...2015-10-21
  • 配置vue全局方法的两种方式实例

    vue项目中有一些方法需要在多个页面调用,但为了避免在每个页面都import进来,可以把方法加到原型上去,这样在每个组件中都能使用了,下面这篇文章主要给大家介绍了关于配置vue全局方法的两种方式,需要的朋友可以参考下...2021-09-13
  • vue配置多代理服务接口地址操作

    这篇文章主要介绍了vue配置多代理服务接口地址操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-09-08
  • mysql(master/slave)主从复制原理及配置图文详解

    这篇文章主要介绍了mysql(masterslave)主从复制原理及配置图文详解,以前脚本之家小编发过相关的内容,但这么好的非常少见特分享一下,需要的朋友可以参考下...2016-06-12
  • 关于springboot中nacos动态路由的配置

    这篇文章主要介绍了springboot中nacos动态路由的配置方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2021-09-11
  • apache中配置整合tomcat环境与安全配置

    系统:centos 5.9 环境:apache 2.2.25 tomcat 7.0.42 jdk 1.7.0 1.安装apache 我这里是直接yum安装的,如果你们要编译安装也不是不行. 代码如下 ...2016-01-28
  • 手机配置那么高为什么玩王者荣耀还会卡?

    明明我的手机配置那么高(都八核了)为什么玩游戏还会卡?对安卓手机来说玩游戏卡顿的原因一般有两种;性能不足导致的卡顿以及CPU发热降频导致的卡顿,详情我们来看看吧...2017-07-06