phpsyslog
Ⅰ 如何将windows日志转成syslog格式
本篇文章是对php中将日志写进syslog的方法进行了详细的分析介绍,需要的朋友参考下 在做项目的时候们为了方便运维,我们经常需要将系统日志写入系统syslog,下边我们就介绍一下,在linux下php对syslog的操作: 在linux中配置syslog 在linux中,facility(设备)有以下几种: AUTH 普通安全/授权消息 AUTHPRIV 私有安全/授权消息 CRON 定时器进程 DAEMON 守护进程 KERN 内核消息 LOCAL0 ... LOCAL7 本地应用,在windows上不支持 LPR 行式打印机 MAIL 邮件服务 NEWS 新闻服务 SYSLOG 由syslogd内部产生的消息 USER 通用的用户级信息 UUCP UUCP子系统 登录linux系统,进入/etc目录,输入: 复制代码 代码如下: vim syslog.conf 打开syslog的配置文件 在这里,你可以看到syslog的所有配置信息,这里定义了在上一节中提到的每种日志类型存储日志所使用的条件,如: daemon.* -/var/log/daemon.log 定义了daemon所产生的日志的保存位置,其中daemon为日志类型,“*”代表将所有级别的日志都放到该文件。格式为: facility。level -日志文件保存的路径,如-/var/log/daemon.log level包括: emerg -该系统不可用 alert -需要立即被修改的条件 crit -阻止某些工具或子系统功能实现的错误条件 err -阻止工具或某些子系统部分功能实现的错误条件 warning -预警信息 notice -具有重要性的普通条件 info -提供信息的消息 debug -不包含函数条件或问题的其他信息 none -没有重要级,通常用于排错 * 所有级别,除了none 下面我们在配置文件中定义一个自己设备的日志规则:local4.info -/var/log/ 接下来执行命令/etc/init.d/sysklogd restart或/etc/init.d/sysklogd reload使新增的配置生效,下面我们可以测试新增的日志规则了: 1.输入命令 logger -p local4.info " my test log" 2.执行命令 tail /var/log/event_log.log 你可以看到自己写入的日志信息: 注意:syslog.conf中local4.info 代表所有info级别以及以上的日志会记录到这里 ok,到现在我们已经在ubuntu中设置好了我们需要的日志,下面我们用php中的syslog将日志写到ubuntu中的syslog中。 下面直接上php代码: 复制代码 代码如下: openlog("Event1.0", LOG_PID LOG_PERROR, LOG_LOCAL4); syslog($level, "LOG MESSAGE: " . $errinfo); closelog(); 以上各方法的具体用法请查看PHP的API,具体用法不在这里赘述。 其中openlog的第一个参数,是日志标识,该标识会自动加在日志信息的开始,用来表示是什么系统写入的日志。 由于我们想要将日志写入local4.info,所以第三个参数需使用LOG_LOCAL4,该参数表示写入日志的设备信息。 syslog中$level为日志级别,包括: LOG_EMERG system is unusable LOG_ALERT action must be taken immediately LOG_CRIT critical conditions LOG_ERR error conditions LOG_WARNING warning conditions LOG_NOTICE normal, but significant, condition LOG_INFO informational message LOG_DEBUG debug-level message 第二个参数为具体的日志内容。
Ⅱ 6.如何禁止php服务程序中不安全的功能
为了使php程序更安全,很多站长都选择了禁用一些比较敏感的函数,那影响php安全的函数到底有哪些呢,下面我们列出了一些:
1、phpinfo()
功能描述:输出 PHP 环境信息以及相关的模块、WEB 环境等信息。
危险等级:中
2、passthru()
功能描述:允许执行一个外部程序并回显输出,类似于 exec()。
危险等级:高
3、exec()
功能描述:允许执行一个外部程序(如 UNIX Shell 或 CMD 命令等)。
危险等级:高
4、system()
功能描述:允许执行一个外部程序并回显输出,类似于 passthru()。
危险等级:高
5、chroot()
功能描述:可改变当前 PHP 进程的工作根目录,仅当系统支持 CLI 模式
PHP 时才能工作,且该函数不适用于 Windows 系统。
危险等级:高
6、scandir()
功能描述:列出指定路径中的文件和目录。
危险等级:中
7、chgrp()
功能描述:改变文件或目录所属的用户组。
危险等级:高
8、chown()
功能描述:改变文件或目录的所有者。
危险等级:高
9、shell_exec()
功能描述:通过 Shell 执行命令,并将执行结果作为字符串返回。
危险等级:高
10、proc_open()
功能描述:执行一个命令并打开文件指针用于读取以及写入。
危险等级:高
11、proc_get_status()
功能描述:获取使用 proc_open() 所打开进程的信息。
危险等级:高
12、error_log()
功能描述:将错误信息发送到指定位置(文件)。
安全备注:在某些版本的 PHP 中,可使用 error_log() 绕过 PHP safe mode,
执行任意命令。
危险等级:低
13、ini_alter()
功能描述:是 ini_set() 函数的一个别名函数,功能与 ini_set() 相同。
具体参见 ini_set()。
危险等级:高
14、ini_set()
功能描述:可用于修改、设置 PHP 环境配置参数。
危险等级:高
15、ini_restore()
功能描述:可用于恢复 PHP 环境配置参数到其初始值。
危险等级:高
16、dl()
功能描述:在 PHP 进行运行过程当中(而非启动时)加载一个 PHP 外部模块。
危险等级:高
17、pfsockopen()
功能描述:建立一个 Internet 或 UNIX 域的 socket 持久连接。
危险等级:高
18、syslog()
功能描述:可调用 UNIX 系统的系统层 syslog() 函数。
危险等级:中
19、readlink()
功能描述:返回符号连接指向的目标文件内容。
危险等级:中
20、symlink()
功能描述:在 UNIX 系统中建立一个符号链接。
危险等级:高
Ⅲ 如何在windows 2008 server r2中配置php程序
如何在windows 2008 server r2中配置php程序
一、准备工作
1、所需软件:
Mysql数据库:本文用MySQL-essential-5.0.45-win32.msi PHP : 本文用php-5.2.4-Win32.zip
ZendOptimizer :本文用ZendOptimizer-3.3.0-Windows-i386.exe 将上述软件网上搜索下载后置于同一目录中,比如:webtools(下文举例同)
2、安装IIS 7,简要步骤如下:
(1)在控制面板中,选择程序-打开关闭Windows功能;
(2)在弹出的Windows功能中选中Internet信息服务;
(3)展开-万维网服务-应用程序开发功能,选中ISAPI扩展(重要);
(4)确定后自动安装;
(5)在IE地址栏里输入http://127.0.0.1(你的IP地址),即可看到IIS7的欢迎界面(图1)
二、PHP环境部署攻略
MySQL数据库部署
(1) 安装MySQL数据库
进入 X:Webtools 目录点击MySQL-essential-5.0.45-win32.msi开始安装,
选择 Custom 定制安装,
选择"Change"更改MySQL 安装位置,
文件复制完毕后,进入 MySQL 设置界面,单击 Finish(完成) ,
选择 Detailed Configuration (详细配置),
选择 MySQL 运行模式,在此处,我们选择Server Machine
选择 MySQL 数据库默认存储方式-Non-Trans Only
设置最大连接数:这里我们选择 128 - 512 之间的整数即可。
此处设置 MySQL 网络参数,Strict Mode不要选择,
设置默认字符集:这里我们选择了GBK模式,需要按照自己的需要选择即可,
Windows
服务模式设定
修改设定 root 用户密码(remote machines不要启动)
MySQL
安装完成,
(2) 测试 MySQL数据库。
在命令行模式下(开始-运行-CMD)输入:
MySQL –u
root –p
按照提示输入密码后,如能进入 MySQL 控制台则说明 MySQL 安装正常,否则需要检查先前安装步骤和相应服务是否启动,进行重新安装。
(3) 更改 MySQL 数据库目录
1)打开 cmd 命令提示符窗口,输入命令:
net stopMySQL
停止 MySQL 服务运行;
2) 打开X:WebMySQLmy.ini
找到:
Datadir ="X:WebMySQLdata"
修改为:
Datadir ="X:Database"
3) 将 X:WebMySQLdata 目录复制到 X: ,并重命名为X:Database;
4) 打开 cmd 命令提示符窗口,输入命令:net startMySQL 启动 MySQL 服务,重新测试 MySQL 是否工作正常。
5)准备 LibMySQL 动态链接库
将X:WebMySQLbinlibMySQL.dll 文件复制到C:WindowsSystem32 即可。
2. PHP服务部署
(1) 解压缩php-5.2.4-Win32.zip文件并将其复制到:X:WebPHP目录、将 php.ini-dist 重命名为 php.ini ;
(2) 打开 php.ini 文件,找到:extension_dir= "./"
将其改为;
extension_dir= "X:WebPHPext"
(3) 找到:Windows Extensions :(去掉模块配置每行前面的;号即可)
extension=php_mbstring.dll
extension=php_gd2.dll
extension=php_MySQL.dll
(5) 找到:
disable_functions =
改为:
disable_functions =phpinfo,passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,pfsockopen,
openlog,syslog,readlink,symlink,popepassthru,stream_socket_server
保存 php.ini 文件,并将其复制到 C:Windows 目录。
3. IIS 7整合PHP-新建站点
(1) 启动 IIS 管理器,选择新建-网站,
(2) 输入网站名称,可任意输入。网站IP地址不用填写,端口如没有特殊要求则保持 80 即可,最后正确输入网站域名。
(3) 在网站分区中建立 wwwroot 以及下级站点目录。
(4)给予该站点"读取"和"运行脚本"的权限以便PHP应用。
4. IIS整合 PHP- 使站点支持 PHP
(1) 打开刚刚建立的网站属性,
(2) 在站点属性窗口中,单击"主目录"页签,单击"配置"按钮,在新弹出的"应用程序配置"对话框中,单击"添加"按钮,加入 PHP 的 ISAPI 支持,选择可执行文件:X:WebPHPphp5isapi.dll 、扩展名为 .php 、限制动作为:GET,POST 。单击"确定"添加,并在"应用程序配置"窗口中查看 .php 扩展是否加载成功。若成功,则单击"确定"关闭配置窗口,回到站点属性主窗口。
(3) 单击"文档"页签,在默认内容文档中添加 index.htm、index.html、index.php 三个文件。
(4)
右键单击"Web 服务扩展",添加 PHP 扩展支持。
(5) 在如下图的"新建WEB服务扩展"对话框中,"扩展名"填写PHP,"文件"选择 X:WebPHPphp5isapi.dll ,并设置该PHP扩展默认为允许。
(6) 重启 IIS 服务,
5、测试 PHP
IIS与PHP的整合已经完毕,下面需要测试 PHP 支持是否正常。
(1) 进入 X:wwwrootbbs 目录,新建一个 phpinfo.php 文件,内容为:
<?
phpinfo();
?>
(2) 打开IE浏览器,输入:http://127.0.0.1/phpinfo.php ;
(3) 如果能够正常显示PHP支持信息则表明配置整合是成功的。
至此,IIS 7下PHP环境部署基本完成,不过,还有一个重要的软件需要安装,即 Zend Optimizer 的安装。 Zend Optimzer 的安装没有特别之处,按照提示安装即可。整个服务器的PHP环境配置完毕。
Ⅳ 请问php中syslog()函数怎么用呢最好可以详细说明,非常感谢!
就是把自定义的信息写入到主机所在的系统日志。
对于windows系统就是写入到eventlog。
语法
bool syslog ( int $priority , string $message )
priority 是预定义好的枚举,用int表示,可以是以下值
值 意义
LOG_EMERG system is unusable
LOG_ALERT action must be taken immediately
LOG_CRIT critical conditions
LOG_ERR error conditions
LOG_WARNING warning conditions
LOG_NOTICE normal, but significant, condition
LOG_INFO informational message
LOG_DEBUG debug-level message
message 是自定义消息,可以保存在日志中。
调用该函数成功返回true,否则返回false
范例,linux平台
<?php
//先使用openlog打开日志服务进程需要指定log服务的pid
//win系统,无法使用log_local0参数。这个参数可以省略
//linux系统可以指定log_local0~log_local7看你需求
openlog("myScriptLog",LOG_PID|LOG_PERROR,LOG_LOCAL0);
//somecode
if(authorized_client()){
//一些代码过程
}else{
//
//尝试记录日志
$access=date("Y/m/dH:i:s");
syslog(LOG_WARNING,"Unauthorizedclient:$access{$_SERVER['REMOTE_ADDR']}({$_SERVER['HTTP_USER_AGENT']})");
}
closelog();//关闭日志服务的调用
?>
Ⅳ php安装的问题,无法载入 mysql 扩展,请检查 PHP 配置
首先你需要将PHP安装目录下的php_mysql.dll和php_mysqli.dll(我的在D:\apptools\php5\ext目录下)复制到c:\windows\system32目录下,然后修改php.ini文件(需要放到c:\windows目录下),关键是extension=php_mysql.dll 和extension_dir = "D:/apptools/php5/ext"。
我的配置是这样的:
[PHP]
;;;;;;;;;;;
; WARNING ;
;;;;;;;;;;;
; This is the default settings file for new PHP installations.
; By default, PHP installs itself with a configuration suitable for
; development purposes, and *NOT* for proction purposes.
; For several security-oriented considerations that should be taken
; before going online with your site, please consult php.ini-recommended
; and http://php.net/manual/en/security.php.
;;;;;;;;;;;;;;;;;;;
; About php.ini ;
;;;;;;;;;;;;;;;;;;;
; This file controls many aspects of PHP's behavior. In order for PHP to
; read it, it must be named 'php.ini'. PHP looks for it in the current
; working directory, in the path designated by the environment variable
; PHPRC, and in the path that was defined in compile time (in that order).
; Under Windows, the compile-time path is the Windows directory. The
; path in which the php.ini file is looked for can be overridden using
; the -c argument in command line mode.
;
; The syntax of the file is extremely simple. Whitespace and Lines
; beginning with a semicolon are silently ignored (as you probably guessed).
; Section headers (e.g. [Foo]) are also silently ignored, even though
; they might mean something in the future.
;
; Directives are specified using the following syntax:
; directive = value
; Directive names are *case sensitive* - foo=bar is different from FOO=bar.
;
; The value can be a string, a number, a PHP constant (e.g. E_ALL or M_PI), one
; of the INI constants (On, Off, True, False, Yes, No and None) or an expression
; (e.g. E_ALL & ~E_NOTICE), or a quoted string ("foo").
;
; Expressions in the INI file are limited to bitwise operators and parentheses:
; | bitwise OR
; & bitwise AND
; ~ bitwise NOT
; ! boolean NOT
;
; Boolean flags can be turned on using the values 1, On, True or Yes.
; They can be turned off using the values 0, Off, False or No.
;
; An empty string can be denoted by simply not writing anything after the equal
; sign, or by using the None keyword:
;
; foo = ; sets foo to an empty string
; foo = none ; sets foo to an empty string
; foo = "none" ; sets foo to the string 'none'
;
; If you use constants in your value, and these constants belong to a
; dynamically loaded extension (either a PHP extension or a Zend extension),
; you may only use these constants *after* the line that loads the extension.
;
;
;;;;;;;;;;;;;;;;;;;
; About this file ;
;;;;;;;;;;;;;;;;;;;
; All the values in the php.ini-dist file correspond to the builtin
; defaults (that is, if no php.ini is used, or if you delete these lines,
; the builtin defaults will be identical).
;;;;;;;;;;;;;;;;;;;;
; Language Options ;
;;;;;;;;;;;;;;;;;;;;
; Enable the PHP scripting language engine under Apache.
engine = On
; Enable compatibility mode with Zend Engine 1 (PHP 4.x)
zend.ze1_compatibility_mode = Off
; Allow the <? tag. Otherwise, only <?php and <script> tags are recognized.
; NOTE: Using short tags should be avoided when developing applications or
; libraries that are meant for redistribution, or deployment on PHP
; servers which are not under your control, because short tags may not
; be supported on the target server. For portable, redistributable code,
; be sure not to use short tags.
short_open_tag = On
; Allow ASP-style <% %> tags.
asp_tags = Off
; The number of significant digits displayed in floating point numbers.
precision = 12
; Enforce year 2000 compliance (will cause problems with non-compliant browsers)
y2k_compliance = On
; Output buffering allows you to send header lines (including cookies) even
; after you send body content, at the price of slowing PHP's output layer a
; bit. You can enable output buffering ring runtime by calling the output
; buffering functions. You can also enable output buffering for all files by
; setting this directive to On. If you wish to limit the size of the buffer
; to a certain size - you can use a maximum number of bytes instead of 'On', as
; a value for this directive (e.g., output_buffering=4096).
output_buffering = On
; You can redirect all of the output of your scripts to a function. For
; example, if you set output_handler to "mb_output_handler", character
; encoding will be transparently converted to the specified encoding.
; Setting any output handler automatically turns on output buffering.
; Note: People who wrote portable scripts should not depend on this ini
; directive. Instead, explicitly set the output handler using ob_start().
; Using this ini directive may cause problems unless you know what script
; is doing.
; Note: You cannot use both "mb_output_handler" with "ob_iconv_handler"
; and you cannot use both "ob_gzhandler" and "zlib.output_compression".
; Note: output_handler must be empty if this is set 'On' !!!!
; Instead you must use zlib.output_handler.
;output_handler =
; Transparent output compression using the zlib library
; Valid values for this option are 'off', 'on', or a specific buffer size
; to be used for compression (default is 4KB)
; Note: Resulting chunk size may vary e to nature of compression. PHP
; outputs chunks that are few hundreds bytes each as a result of
; compression. If you prefer a larger chunk size for better
; performance, enable output_buffering in addition.
; Note: You need to use zlib.output_handler instead of the standard
; output_handler, or otherwise the output will be corrupted.
zlib.output_compression = Off
; You cannot specify additional output handlers if zlib.output_compression
; is activated here. This setting does the same as output_handler but in
; a different order.
;zlib.output_handler =
; Implicit flush tells PHP to tell the output layer to flush itself
; automatically after every output block. This is equivalent to calling the
; PHP function flush() after each and every call to print() or echo() and each
; and every HTML block. Turning this option on has serious performance
; implications and is generally recommended for debugging purposes only.
implicit_flush = Off
; The unserialize callback function will be called (with the undefined class'
; name as parameter), if the unserializer finds an undefined class
; which should be instantiated.
; A warning appears if the specified function is not defined, or if the
; function doesn't include/implement the missing class.
; So only set this entry, if you really want to implement such a
; callback-function.
unserialize_callback_func=
; When floats & doubles are serialized store serialize_precision significant
; digits after the floating point. The default value ensures that when floats
; are decoded with unserialize, the data will remain the same.
serialize_precision = 100
; Whether to enable the ability to force arguments to be passed by reference
; at function call time. This method is deprecated and is likely to be
; unsupported in future versions of PHP/Zend. The encouraged method of
; specifying which arguments should be passed by reference is in the function
; declaration. You're encouraged to try and turn this option Off and make
; sure your scripts work properly with it in order to ensure they will work
; with future versions of the language (you will receive a warning each time
; you use this feature, and the argument will be passed by value instead of by
; reference).
allow_call_time_pass_reference = On
;
; Safe Mode
;
safe_mode = Off
; By default, Safe Mode does a UID compare check when
; opening files. If you want to relax this to a GID compare,
; then turn on safe_mode_gid.
safe_mode_gid = Off
; When safe_mode is on, UID/GID checks are bypassed when
; including files from this directory and its subdirectories.
; (directory must also be in include_path or full path must
; be used when including)
safe_mode_include_dir =
; When safe_mode is on, only executables located in the safe_mode_exec_dir
; will be allowed to be executed via the exec family of functions.
safe_mode_exec_dir =
; Setting certain environment variables may be a potential security breach.
; This directive contains a comma-delimited list of prefixes. In Safe Mode,
; the user may only alter environment variables whose names begin with the
; prefixes supplied here. By default, users will only be able to set
; environment variables that begin with PHP_ (e.g. PHP_FOO=BAR).
;
; Note: If this directive is empty, PHP will let the user modify ANY
; environment variable!
safe_mode_allowed_env_vars = PHP_
; This directive contains a comma-delimited list of environment variables that
; the end user won't be able to change using putenv(). These variables will be
; protected even if safe_mode_allowed_env_vars is set to allow to change them.
safe_mode_protected_env_vars = LD_LIBRARY_PATH
; open_basedir, if set, limits all file operations to the defined directory
; and below. This directive makes most sense if used in a per-directory
; or per-virtualhost web server configuration file. This directive is
; *NOT* affected by whether Safe Mode is turned On or Off.
;open_basedir =
; This directive allows you to disable certain functions for security reasons.
; It receives a comma-delimited list of function names. This directive is
; *NOT* affected by whether Safe Mode is turned On or Off.
disable_functions =
; This directive allows you to disable certain classes for security reasons.
; It receives a comma-delimited list of class names. This directive is
; *NOT* affected by whether Safe Mode is turned On or Off.
disable_classes =
; Colors for Syntax Highlighting mode. Anything that's acceptable in
; <span style="color: ???????"> would work.
;highlight.string = #DD0000
;highlight.comment = #FF9900
;highlight.keyword = #007700
;highlight.bg = #FFFFFF
;highlight.default = #0000BB
;highlight.html = #000000
; If enabled, the request will be allowed to complete even if the user aborts
; the request. Consider enabling it if executing long request, which may end up
; being interrupted by the user or a browser timing out.
; ignore_user_abort = On
;
; Misc
;
; Decides whether PHP may expose the fact that it is installed on the server
; (e.g. by adding its signature to the Web server header). It is no security
; threat in any way, but it makes it possible to determine whether you use PHP
; on your server or not.
expose_php = On
;;;;;;;;;;;;;;;;;;;
; Resource Limits ;
;;;;;;;;;;;;;;;;;;;
max_execution_time = 3000 ; Maximum execution time of each script, in seconds
max_input_time = 60 ; Maximum amount of time each script may spend parsing request data
memory_limit = 8M ; Maximum amount of memory a script may consume (8MB)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Error handling and logging ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; error_reporting is a bit-field. Or each number up to get desired error
; reporting level
; E_ALL - All errors and warnings (doesn't include E_STRICT)
; E_ERROR - fatal run-time errors
; E_WARNING - run-time warnings (non-fatal errors)
; E_PARSE - compile-time parse errors
; E_NOTICE - run-time notices (these are warnings which often result
; from a bug in your code, but it's possible that it was
; intentional (e.g., using an uninitialized variable and
; relying on the fact it's automatically initialized to an
; empty string)
; E_STRICT - run-time notices, enable to have PHP suggest changes
; to your code which will ensure the best interoperability
; and forward compatibility of your code
; E_CORE_ERROR - fatal errors that occur ring PHP's initial startup
; E_CORE_WARNING - warnings (non-fatal errors) that occur ring PHP's
; initial startup
; E_COMPILE_ERROR - fatal compile-time errors
; E_COMPILE_WARNING - compile-time warnings (non-fatal errors)
; E_USER_ERROR - user-generated error message
; E_USER_WARNING - user-generated warning message
; E_USER_NOTICE - user-generated notice message
;
; Examples:
;
; - Show all errors, except for notices and coding standards warnings
;
;error_reporting = E_ALL & ~E_NOTICE
;
; - Show all errors, except for notices
;
;error_reporting = E_ALL & ~E_NOTICE | E_STRICT
;
; - Show only errors
;
;error_reporting = E_COMPILE_ERROR|E_ERROR|E_CORE_ERROR
;
; - Show all errors except for notices and coding standards warnings
;
error_reporting = E_ALL & ~E_NOTICE
; Print out errors (as a part of the output). For proction web sites,
; you're strongly encouraged to turn this feature off, and use error logging
; instead (see below). Keeping display_errors enabled on a proction web site
; may reveal security information to end users, such as file paths on your Web
; server, your database schema or other information.
display_errors = On
; Even when display_errors is on, errors that occur ring PHP's startup
; sequence are not displayed. It's strongly recommended to keep
; display_startup_errors off, except for when debugging.
display_startup_errors = Off
; Log errors into a log file (server-specific log, stderr, or error_log (below))
; As stated above, you're strongly advised to use error logging in place of
; error displaying on proction web sites.
log_errors = Off
; Set maximum length of log_errors. In error_log information about the source is
; added. The default is 1024 and 0 allows to not apply any maximum length at all.
log_errors_max_len = 1024
; Do not log repeated messages. Repeated errors must occur in same file on same
; line until ignore_repeated_source is set true.
ignore_repeated_errors = Off
; Ignore source of message when ignoring repeated messages. When this setting
; is On you will not log errors with repeated messages from different files or
; sourcelines.
ignore_repeated_source = Off
; If this parameter is set to Off, then memory leaks will not be shown (on
; stdout or in the log). This has only effect in a debug compile, and if
; error reporting includes E_WARNING in the allowed list
report_memleaks = On
; Store the last error/warning message in $php_errormsg (boolean).
track_errors = Off
; Disable the inclusion of HTML tags in error messages.
; Note: Never use this feature for proction boxes.
;html_errors = Off
; If html_errors is set On PHP proces clickable error messages that direct
; to a page describing the error or function causing the error in detail.
; You can download a of the PHP manual from http://www.php.net/docs.php
; and change docref_root to the base URL of your local including the
; leading '/'. You must also specify the file extension being used including
; the dot.
; Note: Never use this feature for proction boxes.
;docref_root = "/phpmanual/"
;docref_ext = .html
; String to output before an error message.
;error_prepend_string = "<font color=ff0000>"
; String to output after an error message.
;error_append_string = "</font>"
; Log errors to specified file.
;error_log = filename
; Log errors to syslog (Event Log on NT, not valid in Windows 95).
;error_log = syslog
;;;;;;;;;;;;;;;;;
; Data Handling ;
;;;;;;;;;;;;;;;;;
;
; Note - track_vars is ALWAYS enabled as of PHP 4.0.3
; The separator used in PHP generated URLs to separate arguments.
; Default is "&".
;arg_separator.output = "&"
; List of separator(s) used by PHP to parse input URLs into variables.
; Default is "&".
; NOTE: Every character in this directive is considered as separator!
;arg_separator.input = ";&"
; This directive describes the order in which PHP registers GET, POST, Cookie,
; Environment and Built-in variables (G, P, C, E & S respectively, often
; referred to as EGPCS or GPC). Registration is done from left to right, newer
; values override older values.
variables_order = "EGPCS"
; Whether or not to register the EGPCS variables as global variables. You may
; want to turn this off if you don't want to clutter your scripts' global scope
; with user data. This makes most sense when coupled with track_vars - in which
; case you can access all of the GPC variables through the $HTTP_*_VARS[],
; variables.
;
; You should do your best to write your scripts so that they do not require
; register_globals to be on; Using form variables as globals can easily lead
; to possible security problems, if the code is not very well thought of.
register_globals = On
; Whether or not to register the old-style input arrays, HTTP_GET_VARS
; and friends. If you're not using them, it's recommended to turn them off,
; for performance reasons.
register_long_arrays = On
; This directive tells PHP whether to declare the argv&argc variables (that
; would contain the GET information). If you don't use these variables, you
; should turn it off for increased performance.
register_argc_argv = On
; When enabled, the SERVER and ENV variables are created when they're first
; used (Just In Time) instead of when the script starts. If these variables
; are not used within a script, having this directive on will result in a
; performance gain. The PHP directives register_globals, register_long_arrays,
; and register_argc_argv must be disabled for this directive to have any affect.
auto_globals_jit = On
; Maximum size of POST data that PHP will accept.
post_max_size = 8M
; Magic quotes
;
; Magic quotes for incoming GET/POST/Cookie data.
magic_quotes_gpc = On
; Magic quotes for runtime-generated data, e.g. data from SQL, from exec(), etc.
magic_quotes_runtime = Off
; Use Sybase-style magic quotes (escape ' with '' instead of \').
magic_quotes_sybase = Off
; Automatically add files before or after any PHP document.
auto_prepend_file =
auto_append_file =
; As of 4.0b4, PHP always outputs a character encoding by default in
; the Content-type: header. To disable sending of the charset, simply
; set it to be empty.
;
; PHP's built-in default is text/html
default_mimetype = "text/html"
;default_charset = "iso-8859-1"
; Always populate the $HTTP_RAW_POST_DATA variable.
;always_populate_raw_post_data = On
;;;;;;;;;;;;;;;;;;;;;;;;;
; Paths and Directories ;
;;;;;;;;;;;;;;;;;;;;;;;;;
; UNIX: "/path1:/path2"
;include_path = ".:/php/includes"
;
; Windows: "\path1;\path2"
include_path = ".;D:\apptools\php5\PEAR"
; The root of the PHP pages, used only if nonempty.
; if PHP was not compiled with FORCE_REDIRECT, you SHOULD set doc_root
; if you are running php as a CGI under any web server (other than IIS)
; see documentation for security issues. The alternate is to use the
; cgi.force_redirect configuration below
doc_root =
; The directory under which PHP opens the script using /~username used only
; if nonempty.
user_dir =
; Directory in which the loadable extensions (moles) reside.
extension_dir = "D:/apptools/php5/ext"
; Whether or not to enable the dl() function. The dl() function does NOT work
; properly in multithreaded servers, such as IIS or Zeus, and is automatically
; disabled on them.
enable_dl = On
Ⅵ php-fpm错误日志不能记录怎么办
要想让php-fpm显示错误日志,首先需要配置php-fpm。
在php-fpm的配置文件中(一般位于php安装目录下的etc/php-fpm.conf)配置php错误日志的文件路径。
1
2
3
4
5
6
; Error log file
; If it's set to "syslog", log is sent to syslogd instead of being written
; in a local file.
; Note: the default prefix is /home/wangwei/php/var
; Default Value: log/php-fpm.log
;error_log = log/php-fpm.log
如上是我的php-fpm.conf文件中配置错误日志的地方。把error_log = log/php-fpm.log之前的;去掉,然后修改为:
; Error log file
; If it's set to "syslog", log is sent to syslogd instead of being written
; in a local file.
; Note: the default prefix is /home/wangwei/php/var
; Default Value: log/php-fpm.log
error_log = /home/work/log/php-fpm.log.wf
修改之后,保存配置,然后重启php-fpm就可以啦。
注意如果用相对路径的话,的路径的前缀是基于php安装目录的var目录的。
Ⅶ php 怎么获取 linux磁盘读写io使用率
1.使用iotop命令
使用该命令有个条件,Linux内核要高于2.6.20的版本,版本过低则没有此命令,执行效果如下图所示:
2:block_mp方法
首先,关闭syslog服务,然后开启block_mp,最后正则表达式提取dmesg信息。
/etc/init.d/syslog stop
echo 1 > /proc/sys/vm/block_mp
dmesg | egrep "READ|WRITE|dirtied" | egrep -o '([a-zA-Z]*)' | sort | uniq -c | sort -rn | head
执行结果如下图所示:
注意:操作完成后请关闭block_mp和启动syslog
echo 0 > /proc/sys/vm/block_mp #关闭block_mp
/etc/init.d/syslog start #启动syslog
Ⅷ php openlog()函数怎么用最好能详细说明,非常感谢!
本函数会打开操作系统的纪录机制 (logger)。参数 ident 会加到纪录的字符串中。参数 option 的值包括了 LOG_PID、LOG_CONS、LOG_ODELAY、LOG_NDELAY、LOG_NOWAIT、LOG_PERROR,在 Win32 系统中,只有 LOG_PID 有效。参数 facility 的值可能为 LOG_KERN、LOG_USER、LOG_MAIL、LOG_DAEMON、LOG_AUTH、LOG_SYSLOG、LOG_LPR、LOG_NEWS、LOG_UUCP、LOG_CRON 或 LOG_AUTHPRIV,在 Win32 系统上,本参数是无效的字段。本函数呼叫 UNIX 系统的 openlog() 函数,因此在 Windows 系列的操作系统中,本函数没有完全的实作。
使用范例
<?php
openlog("FUN", LOG_PID | LOG_CONS, LOG_USER);
syslog(LOG_INFO, "Wa ha ha ....");
closelog();
?>
参考
syslog() closelog()