导航:首页 > IDC知识 > php服务器验证

php服务器验证

发布时间:2020-10-30 05:17:19

1、php 如何获取服务器的信息

服务器变量 $_SERVER 详解:

1、$_SESSION['PHP_SELF'] — 获取当前正在执行脚本的文件名

2、$_SERVER['SERVER_PROTOCOL'] — 请求页面时通信协议的名称和版本。例如,“HTTP/1.0”。

3、$_SERVER['REQUEST_TIME'] — 请求开始时的时间戳。从 PHP 5.1.0 起有效。和time函数效果一样。

4、$_SERVER['argv'] — 传递给该脚本的参数。我试了下,get方法可以得到$_SERVER['argv'][0];post方法无法给他赋值。

5、$_SERVER['SERVER_NAME'] — 返回当前主机名。

6、$_SERVER['SERVER_SOFTWARE'] — 服务器标识的字串,在响应请求时的头信息中给出。 如Microsoft-IIS/6.0

7、$_SERVER['REQUEST_METHOD'] — 访问页面时的请求方法。例如:“GET”、“HEAD”,“POST”,“PUT”。

8、$_SERVER['QUERY_STRING'] — 查询(query)的字符串(URL 中第一个问号 ? 之后的内容)。

9、$_SERVER['DOCUMENT_ROOT'] — 当前运行脚本所在的文档根目录。在服务器配置文件中定义。 如E:\server

10、$_SERVER['HTTP_ACCEPT'] — 当前请求的 Accept: 头信息的内容。

11、$_SERVER['HTTP_ACCEPT_CHARSET'] — 当前请求的 Accept-Charset: 头信息的内容。例如:“iso-8859-1,*,utf-8”。

12、$_SERVER['HTTP_ACCEPT_ENCODING'] — 当前请求的 Accept-Encoding: 头信息的内容。例如:“gzip”。

13、$_SERVER['HTTP_ACCEPT_LANGUAGE'] — 当前请求的 Accept-Language: 头信息的内容。例如:“en”。

14、$_SERVER['HTTP_CONNECTION'] — 当前请求的 Connection: 头信息的内容。例如:“Keep-Alive”。

15、$_SERVER['HTTP_HOST'] — 当前请求的 Host: 头信息的内容。

16、$_SERVER['HTTP_REFERER'] — 链接到当前页面的前一页面的 URL 地址。

17、$_SERVER['HTTP_USER_AGENT'] — 返回用户使用的浏览器信息。也可以使用 get_browser() 得到此信息。

18、$_SERVER['HTTPS'] — 如果通过https访问,则被设为一个非空的值,否则返回off.

19、$_SERVER['REMOTE_ADDR'] — 正在浏览当前页面用户的 IP 地址。

20、$_SERVER['REMOTE_HOST'] — 正在浏览当前页面用户的主机名。反向域名解析基于该用户的 REMOTE_ADDR。如本地测试返回127.0.0.1

21、$_SERVER['REMOTE_PORT'] — 用户连接到服务器时所使用的端口。我在本机测试没通过,不知道什么原因。

22、$_SERVER['SCRIPT_FILENAME'] — 当前执行脚本的绝对路径名。如返回E:\server\index.php

23、$_SERVER['SERVER_ADMIN'] — 该值指明了 Apache 服务器配置文件中的 SERVER_ADMIN 参数。如果脚本运行在一个虚拟主机上,则该值是那个虚拟主机的值

24、$_SERVER['SERVER_PORT'] — 服务器所使用的端口。默认为“80”。如果使用 SSL 安全连接,则这个值为用户设置的 HTTP 端口。

25、$_SERVER['SERVER_SIGNATURE'] — 包含服务器版本和虚拟主机名的字符串。

26、$_SERVER['PATH_TRANSLATED'] — 当前脚本所在文件系统(不是文档根目录)的基本路径。这是在服务器进行虚拟到真实路径的映像后的结果。 Apache 2 用 户可以使用 httpd.conf 中的 AcceptPathInfo On 来定义 PATH_INFO。

27、$_SERVER['SCRIPT_NAME'] — 包含当前脚本的路径。这在页面需要指向自己时非常有用。__FILE__ 包含当前文件的绝对路径和文件名(例如包含文件)。

28、$_SERVER['REQUEST_URI'] — 访问此页面所需的 URI。例如,“/index.html”。

29、$_SERVER['PHP_AUTH_DIGEST'] — 当作为 Apache 模块运行时,进行 HTTP Digest 认证的过程中,此变量被设置成客户端发送的“Authorization”HTTP 头内容(以便作进一步的认证操作)。

30、$_SERVER['PHP_AUTH_USER']– 当 PHP 运行在 Apache 或 IIS(PHP 5 是 ISAPI)模块方式下,并且正在使用 HTTP 认证功能,这个变量便是用户输入的用户名。

31、$_SERVER['PHP_AUTH_PW'] — 当 PHP 运行在 Apache 或 IIS(PHP 5 是 ISAPI)模块方式下,并且正在使用 HTTP 认证功能,这个变量便是用户输入的密码。

32、$_SERVER['AUTH_TYPE']–当 PHP 运行在 Apache 模块方式下,并且正在使用 HTTP 认证功能,这个变量便是认证的类型。

2、用PHP做网站,比如,用户登录验证需要写两个吗?即客户端验证(用JS写),另一个是服务器端验证(用

你不写验证都可以。
写验证是为了防止用户攻击网站,或者往数据库专里存入一些垃圾数据。
一般都会写客户端属验证,客户端验证一般都用js写,js本地跑,不影响服务器性能。
写服务端验证是为了防止用户跳过客户端验证(比如直接发请求,不经过页面的js代码)从而攻击或者非法操作。
网站最重要的就是数据了,你想,如果你不做验证,稍微会些代码的人直接通过请求就可以把你数据库给拷下来。那还玩毛啊。
纯手工,望采纳

3、怎样测试服务器是否支持PHP的伪静态?

1.检测Apache是否支持mod_rewrite 通过php提供的phpinfo()函数查看环境配置,通过Ctrl+F查找到“Loaded Moles”,其中列出了所有apache2handler已经开启的模块,如果里面包括“mod_rewrite”,则已经支持,不再需要继续设置。
如果没有开启“mod_rewrite”,则打开目录 您的apache安装目录“/apache/conf/” 下的 httpd.conf 文件,通过Ctrl+F查找到“LoadMole rewrite_mole”,将前面的”#”号删除即可。
如果没有查找到,则到“LoadMole” 区域,在最后一行加入“LoadMole rewrite_mole moles/mod_rewrite.so”(必选独占一行),然后重启apache服务器即可。

2.让apache服务器支持.htaccess
修改httpd.conf文件

Options FollowSymLinks
AllowOverride None
改为
Options FollowSymLinks
AllowOverride All

注意:除了要设置上面的地方以后,还得设置一下下面这个(网上很多资料都没有讲到这一块),否则你将会配制失败, 把 DocumentRoot 后面的参数改为你本地网站的目录 例如你网站的根目录为 D:/web/ 则得设置为 DocumentRoot "D:/web/" 也就是修改当前目录

此步骤设置好后也得重启apache服务器才能生效

3.建立.htaccess 文件
新建 htaccess.txt
用记事本 打开,点击文件–另存为,在文件名窗口输入”.htaccess”,然后点击保存。此文件得保存在网站的根目录

4.填写网站伪静态规则 (需要 了解 正则表达式)

<IfMole mod_rewrite.c>

RewriteEngine on

RewriteRule index.html$ index.php
RewriteRule index-([1-9]+[0-9]*).html$ index.php?p=$1

</IfMole>

希望能够帮到你和网上的其它朋友,曾经我也在上面绞尽脑汁。

4、PHP微信测试号验证服务器的时候接口配置提示配置成功但是没有得到url参数

建议你按照我的配置,再测试一下:
public function index(){
//获得参数 signature nonce token timestamp echostr
$nonce = $_GET['nonce'];
$token = 'weixin';
$timestamp = $_GET['timestamp'];
$echostr = $_GET['echostr'];
$signature = $_GET['signature'];
//形成数组,然后按字典序排序
$array = array();
$array = array($nonce, $timestamp, $token);
sort($array);
//拼接成字符串,sha1加密 ,然后与signature进行校验
$str = sha1( implode( $array ) );
if( $str == $signature && $echostr ){
//第一次接入weixin api接口的时候
//(第一次,有四个参数,signature、nonce、timestamp、echostr,第二次就没有echostr参数)
echo $echostr;
exit;
}else{
$this->reponseMsg();//接收事件推送并回复
}
}

5、PHP怎样检测服务器是否支持重写

是这样,伪静态,是伪装的静态,不是真正的静态化。
在用户看到以为是静态的,其专实在服务端有一属个文件(.htaccess)有路由功能,会跳转。
比如,举一个例子:
RewriteRule
^([a-zA-Z0-9]+).html$
./?id=$1
//重写规则
这里是正则表达式,表示将
以字母、数字开头,以.html结尾的网址,自动换成
./?option=数字字母
很简单吧?
------------------------
也就是说,你其实
1.html
的网页,在服务器其实是执行的?id=1
1.html
这个文件根本不存在。

6、如何检验自己的服务器是否支持PHP

服务器执行
rpm -qa | grep -i php 查看是否有安装
或者新建一个index.php的文件
内容为
<?php
phpinfo();
放在web服务器目录下能访问就是

7、如何使用php验证代理服务器

如何验证代理服务器
代理服务器可以说不是很稳定,有的昨天用得还好好的,今天就不能用了,或者是要密码了,为了弄清楚该代理是否还是Free的,就要利用“代理猎手”的验证功能。代理猎手的右下方有8个按钮,第一个是“检验”、第二个是“检验全部”,我们可以按〔检验全部〕来验证列表中的所有代理是否可以使用,也可以在列表中选中一个或多个代理地址后,点击〔检验〕,只验证这几个代理是否可以使用。验证完毕后,点击列表的标题“验证状态”,可以把可用的代理服务器集中排列在列表的前面,方便查找。

8、如何检测PHP服务器是否支持某个函数

echo function_exists(函数名称);
输出1或者true表示支持
输出0或者false表示不支持

9、提交表单时,怎么控制先进行JS验证,如果通过JS验证再连接服务器执行PHP语句呢?

我把代码都写在一个文件里面 命名为 test.php 你可以测试一下 我只是写了个意思 具体的操作你可以自己再写 我测试没问题了

<html>
<head>
<script type="text/javascript" src="update.js"></script>
<form action = "update.php" method = "POST">
</form>
</head>
<body>
<form action = "test.php" onsubmit="return my_check();" method = "POST">
<table>
<tr><td><label for = "id">文件号:</label></td><td><input type = "text" size="8" name = "id" id='my_id' /></td></tr>
<tr><td><label for = "user">姓名:</label></td><td><input type = "text" size = "8" name = "user" /></td></tr>
<tr><td><input type = "submit" name = "submit" value = "提交更新"/>
<input type = "hidden" name = "action" value = "add" />
<input type = "reset" name = "reset" value = "重新填写" /></td></tr>
</table>
</form>
</body>
</html>

<script language=javascript>
function my_check(){
var a = document.getElementById("my_id");
if(a.value==""){
alert ("文件号不能为空"+"\n"+"请加上");
a.focus();
return(false);
}
else{
return(true);
}
}
</script>

<?
$act = $_POST['action'];
if($act == 'add'){
$id = $_POST['id'];
echo "您输入了".$id;
}
?>

10、php项目在linux服务器上验证码不显示

linux里面去掉;是没用的,关键是编译的时候加上
cd ../gd-2.0.33 && ./configure --prefix=/usr/local/gd2 --with-jpeg=/usr/local/jpeg6/ --with-png=/usr/local/lib/ --with-zlib=/usr/local/lib/ --with-freetype=/usr/local/freetype/ && make && make install

#install php
cd ../php-5.2.12/
./configure --prefix=/usr/local/php \
--with-apxs2=/usr/local/apache/bin/apxs \
--with-mysql=/usr/local/mysql \
--with-pdo-mysql=/usr/local/mysql \
--enable-ftp \
--enable-soap \
--enable-sockets \
--enable-mbstring=all \
--with-libxml-dir=/usr/local/libxml2 \
--with-gd=/usr/local/gd2/ \
--with-jpeg-dir=/usr/local/jpeg6/ \
--with-zlib-dir=/usr/local/lib/ \
--with-curl=/usr/local/curl \
--with-freetype-dir=/usr/local/freetype/ \
--with-libxslt-dir=/usr/local/libxslt
make && make install

与php服务器验证相关的知识