php获取当前域名,php怎么获取域名之后的url

8678008682024-03-10 21:43:3469域名知识

各位老铁们好,相信很多人对php获取当前域名都不是特别的了解,因此呢,今天就来为大家分享下关于php获取当前域名以及php怎么获取域名之后的url的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!

php获取当前域名,php怎么获取域名之后的urlphp怎么获取域名之后的url

1,$_SERVER["QUERY_STRING"]

说明:查询(query)的字符串

2,$_SERVER["REQUEST_URI"]

说明:访问此页面所需的URI

3,$_SERVER["SCRIPT_NAME"]

说明:包含当前脚本的路径

php获取当前域名,php怎么获取域名之后的url

4,$_SERVER["PHP_SELF"]

说明:当前正在执行脚本的文件名

实例:

1,http://www.biuuu.com/(直接打开主页)

结果:

$_SERVER["QUERY_STRING"]=""

$_SERVER["REQUEST_URI"]="/"

$_SERVER["SCRIPT_NAME"]="/index.php"

$_SERVER["PHP_SELF"]="/index.php"

2,http://www.biuuu.com/?p=222(附带查询)

结果:

$_SERVER["QUERY_STRING"]="p=222"

$_SERVER["REQUEST_URI"]="/?p=222"

$_SERVER["SCRIPT_NAME"]="/index.php"

$_SERVER["PHP_SELF"]="/index.php"

3,http://www.biuuu.com/index.php?p=222&q=biuuu

结果:

$_SERVER["QUERY_STRING"]="p=222&q=biuuu"

$_SERVER["REQUEST_URI"]="/index.php?p=222&q=biuuu"

$_SERVER["SCRIPT_NAME"]="/index.php"

$_SERVER["PHP_SELF"]="/index.php"

$_SERVER["QUERY_STRING"]获取查询语句,实例中可知,获取的是?后面的值

$_SERVER["REQUEST_URI"]获取http://www.biuuu.com后面的值,包括/

$_SERVER["SCRIPT_NAME"]获取当前脚本的路径,如:index.php

$_SERVER["PHP_SELF"]当前正在执行脚本的文件名

当前url:"http://".$_SERVER[HTTP_HOST].$_SERVER[PHP_SELF]

总结一下,对于QUERY_STRING,REQUEST_URI,SCRIPT_NAME和PHP_SELF,深入了解将有利于我们在$_SERVER函数中正确调用这四个值。通过实例详解$_SERVER函数中QUERY_STRING,REQUEST_URI,SCRIPT_NAME和PHP_SELF掌握四个变量之间的区别。

$_SERVER["REQUEST_URI"]:获取当前请求的完整的(除域名的)url。。。

uchome系统中处理技巧:

代码

//处理REQUEST_URI

if(!isset($_SERVER[REQUEST_URI])){

$_SERVER[REQUEST_URI]=$_SERVER[PHP_SELF];

if(isset($_SERVER[QUERY_STRING]))$_SERVER[REQUEST_URI].=?.$_SERVER[QUERY_STRING];

}

if($_SERVER[REQUEST_URI]){

$temp= urldecode($_SERVER[REQUEST_URI]);

if(strexists($temp,<)|| strexists($temp,")){

$_GET= shtmlspecialchars($_GET);//XSS

}

}

代码如下:

代码

<?php

echo$_SERVER[DOCUMENT_ROOT]."<br>";//获得服务器文档根变量

echo$_SERVER[PHP_SELF]."<br>";//获得执行该代码的文件服务器绝对路径的变量

echo __FILE__."<br>";//获得文件的文件系统绝对路径的变量

echo dirname(__FILE__);//获得文件所在的文件夹路径的函数

?>

//server函数

$_SERVER["HTTP_REFERER"]=http://localhost/lianxi/

$_SERVER["HTTP_ACCEPT_LANGUAGE"]=zh-cn

$_SERVER["HTTP_ACCEPT_ENCODING"]=gzip, deflate

$_SERVER["HTTP_USER_AGENT"]=Mozilla/4.0(compatible; MSIE 6.0; Windows NT 5.2;.NET CLR 1.1.4322;.NET CLR 2.0.50727)

$_SERVER["HTTP_HOST"]=localhost

$_SERVER["HTTP_CONNECTION"]=Keep-Alive

$_SERVER["PATH"]=C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\Common Files\Adobe\AGL;C:\Program Files\MySQL\MySQL Server 5.0\bin;C:\php;C:\php\ext

$_SERVER["SystemRoot"]=C:\WINDOWS

$_SERVER["COMSPEC"]=C:\WINDOWS\system32\cmd.exe

$_SERVER["PATHEXT"]=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH

$_SERVER["WINDIR"]=C:\WINDOWS

$_SERVER["SERVER_SIGNATURE"]=

Apache/2.0.55(Win32) PHP/5.1.1 Server at localhost Port 80\\使用的何服务器

$_SERVER["SERVER_SOFTWARE"]=Apache/2.0.55(Win32) PHP/5.1.1

$_SERVER["SERVER_NAME"]=localhost\\服务器名称

$_SERVER["SERVER_ADDR"]=127.0.0.1

$_SERVER["SERVER_PORT"]=80\\服务器端口

$_SERVER["REMOTE_ADDR"]=127.0.0.1

$_SERVER["DOCUMENT_ROOT"]=D:/lianxi\\网站的主目录

$_SERVER["SERVER_ADMIN"]=sss@163.com\\安装APACHE时设置的邮箱

$_SERVER["SCRIPT_FILENAME"]=D:/lianxi/lianxi/servervalues.php\\当前的网页的绝对路径,

$_SERVER["REMOTE_PORT"]=1076\\远程端口

$_SERVER["GATEWAY_INTERFACE"]=CGI/1.1

$_SERVER["SERVER_PROTOCOL"]=HTTP/1.1

$_SERVER["REQUEST_METHOD"]=GET

$_SERVER["QUERY_STRING"]=\\获取?号后面的内容

$_SERVER["REQUEST_URI"]=例子:/lianxi/servervalues.php?a=1&b=2

$_SERVER["SCRIPT_NAME"]=例子:/lianxi/servervalues.php

$_SERVER["PHP_SELF"]=/lianxi/servervalues.php\\返回当前网页的相对路径.

$_SERVER["REQUEST_TIME"]=1179190013\\运行时间单位为十万分之一毫秒

$_SERVER["argv"]=Array

$_SERVER["argc"]=0

1,$_SERVER["QUERY_STRING"]

说明:查询(query)的字符串

2,$_SERVER["REQUEST_URI"]

说明:访问此页面所需的URI

3,$_SERVER["SCRIPT_NAME"]

说明:包含当前脚本的路径

4,$_SERVER["PHP_SELF"]

说明:当前正在执行脚本的文件名

实例:

1,http://www.biuuu.com/(直接打开主页)

结果:

$_SERVER["QUERY_STRING"]=“”

$_SERVER["REQUEST_URI"]=“/”

$_SERVER["SCRIPT_NAME"]=“/index.php”

$_SERVER["PHP_SELF"]=“/index.php”

2,http://www.biuuu.com/?p=222(附带查询)

结果:

$_SERVER["QUERY_STRING"]=“p=222″

$_SERVER["REQUEST_URI"]=“/?p=222″

$_SERVER["SCRIPT_NAME"]=“/index.php”

$_SERVER["PHP_SELF"]=“/index.php”

3,http://www.biuuu.com/index.php?p=222&q=biuuu

结果:

$_SERVER["QUERY_STRING"]=“p=222&q=biuuu”

$_SERVER["REQUEST_URI"]=“/index.php?p=222&q=biuuu”

$_SERVER["SCRIPT_NAME"]=“/index.php”

$_SERVER["PHP_SELF"]=“/index.php”

$_SERVER["QUERY_STRING"]获取查询语句,实例中可知,获取的是?后面的值

$_SERVER["REQUEST_URI"]获取http://www.biuuu.com后面的值,包括/

$_SERVER["SCRIPT_NAME"]获取当前脚本的路径,如:index.php

$_SERVER["PHP_SELF"]当前正在执行脚本的文件名

代码

<?php

/**

__FILE__,

getcwd(),

$_SERVER["REQUEST_URI"],

$_SERVER["SCRIPT_NAME"],

$_SERVER["PHP_SELF"],

$_SERVER["SCRIPT_FILENAME"],

来观察一下这些变量或函数的异同.

假设有一个请求地址为: http://localhost:8080/test.php/age=20

而test.php的完整路径是: D:/server/www/example/test.php

1) getcwd()

将得到浏览器请求的页面文件所在的目录.即test.php文件所在的目录: D:/server/www/example/,

如果在test.php执行了 require或 include语句,比如 inculde(”test_dir/test2.php”),

那么在 test2.php里 getcwd()函数返回的也将是 test.php所在的目录.

2) __FILE__

一个魔术变量,用它将得到 __FILE__变量所在文件的完整路径,

比如: test.php里 __FILE__将得到 D:/server/www/example/test.php,

test_dir/test2.php里的 __FILE__将得到 D:/server/www/example/test_dir/test2.php

3)$_SERVER["SCRIPT_FILENAME"]

将得到浏览器请求的页面文件的完整路径.

test.php和 test_dir/test2.php里用$_SERVER["SCRIPT_NAME"]都将得到 D:/server/www/example/test.php.

4)$_SERVER["SCRIPT_NAME"]

将得到浏览器请求的页面文件的文件名,注意:与$_SERVER["SCRIPT_NAME"]不同,此变量只得到文件名而不包含路径,

在test.php与 test_dir/test2.php用$_SERVER["SCRIPT_NAME"]得到的都将是 test.php.

当然,在test.php与 test_dir/test2.php执行 basename($_SERVER["SCRIPT_FILENAME"])与$_SERVER["SCRIPT_NAME"]相同.

执行在test.php与 test_dir/test2.php执行 realpath(”test.php”)得到的结果与$_SERVER["SCRIPT_FILENAME"]相同.

5)$_SERVER["PHP_SELF"]

将得到浏览器请求页面的文件名,并剥掉问号?后的内容,注意:不包含路径,

比如在客户端里请求 http://localhost:8080/test.php?age=20&name=Tom,

那么test.php和 test_dir/test2.php的$_SERVER["PHP_SELF"]都将得到“test.php”。“age=20&name=Tom”被剥掉。

而如果客户端里请求 http://localhost:8080/test.php/age=20&name=Tom,

那么test.php和 test_dir/test2.php的$_SERVER["PHP_SELF"]都将得到“test.php/age=20&name=Tom”。

6)$_SERVER["REQUEST_URI"]

将得到浏览器请求页面的文件名,以及文件名之后的所有内容(注意:井号#之后的内容将被略去),

比如在客户端里请求 http://localhost:8080/test.php?age=20&name=Tom,

那么test.php和 test_dir/test2.php的$_SERVER["REUEST_URI"]都将得到“test.php”。“age=20&name=Tom”被剥掉。

而如果客户端里请求 http://localhost:8080/test.php/age=20&name=Tom,

那么test.php和 test_dir/test2.php的$_SERVER["REQUEST_URI"]都将得到“test.php/age=20&name=Tom”。

*/

// test.php:

echo“test1.php variables<br/>”;

echo“getcwd:“, getcwd(),“<br/>”;

echo“__FILE__:“, __FILE__,“<br/>”;

echo“REQUEST_URI:“,$_SERVER["REQUEST_URI"],“<br/>”;

echo“SCRIPT_NAME:“,$_SERVER["SCRIPT_NAME"],“<br/>”;

echo“PHP_SELF:“,$_SERVER["PHP_SELF"],“<br/>”;

echo“SCRIPT_FILENAME“,$_SERVER["SCRIPT_FILENAME"],“<br/>”;

//把 test2.php包含进来,在 test2.php里输出上面的变量,看有什么不同:

include_once(”test2/test2.php”);

?>

php 获取服务器计算机名和服务器域名

1、做成web服务器需要满足:域名或者公网ip,电脑安装配置web服务,开启80端口允许访问,网站程序。

2、域名或者公网ip,这一点一般家用宽带没有固定的公网ip,常用的动态域名解析花生壳,科迈动态解析,建议申请使用花生壳动态域名解析,并设置到路由器上,这样网站的访问域名是花生壳的子域名。

3、如果有公网固定ip,建议购买一个域名解析到这个ip上,这个公网ip可以在电脑直接设定。web绑定,防火墙允许80端口就可以了。

4、电脑安装配置web服务,这个条件比较好实现,找个服务器操作系统,如win2003系统,安装上iis组件就可以了,默认80就打开了,然后再配置一下程序需要的环境。

5、如果.net程序就安装net framwork相应版本,如果php就配置php+mysql环境。

6、家用宽带默认80端口在路由器不开放的,需要在路由器上做端口映射,将个人电脑ip 80端口通过宽带路由映射出去。

7、网站程序,自己会开发了可以自己做,不会了到网上下载一些开源程序就可以了。

yii如何获取当前url和域名

假设我们当前页面的访问地址是:

http://localhost/CMS/public/index.php?r=news&id=1(推荐教程:yii)

一、

1、获取当前域名:

echo Yii::app()->request->hostInfo;结果:

http://localhost2、获取(除域名外的)当前URL:

echo Yii::app()->request->getUrl();结果:

/CMS/public/index.php?r=news&id=13、获取(除域名外的)首页地址:

echo Yii::app()->user->returnUrl;结果:

/CMS/public/index.php4、获取(除域名外的)根目录地址:

echo Yii::app()->homeUrl;结果:

/CMS/public/index.php5、

echo Yii::app()->request->baseUrl;结果:

/CMS/public6、获取网站根目录相对地址:

echo Yii::app()->baseUrl;结果:

/CMS/public(注意:如果直接用这种方法指向网站根目录,请最好在其后面添加一个“/”,因为有时如果不添加“/”,有可能不能正确指向网站根目录。应用举例:<a rel="external nofollow" href="<?php echo Yii::app()->baseUrl;?>/">Home</a>)

二、

7、 YII获取 IP地址:

Yii::app()->request->userHostAddress;8、Yii判断提交方式:

Yii::app()->request-isPostRequest;9、proteced目录的物理路径:

Yii::app()->basePath;10、获取上一页的url以返回:

Yii::app()->request->urlReferrer;11、获取当前控制器ID:

Yii::app()->getController()->getAction()->id;12、项目路径:

dirname(Yii::app()->BasePath);13、Yii获取get,post过来的数据:

Yii::app()->request->getParam(id);三、

14、Yii如何设置时区:

可以在config/main.php里timeZone=>Asia/Chongqing,设定时区

15、防止重复提交:

Ccontroler->refresh();

关于php获取当前域名和php怎么获取域名之后的url的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

本文链接:https://aiming.cc/index.php/post/550.html 转载需授权!

分享到:
转载声明:本站发布文章及版权归原作者所有,转载本站文章请注明文章来源!