繁体   English   中英

在URL中最后一个斜杠后我怎么称呼尾随值以及如何在php中获取它

[英]what do I call the trailing value after last slash in a url and how to get it in php

我是PHP和Web的新手,我想知道在某些URL中,我们将最后一个斜杠之后的最后一个字符串值称为什么。 例如此网址中的“ abc123”

网址1

 http://www.example.com/folder1/abc123


我知道在?之后存在的URL parameters ? 问号以及如何在我的PHP脚本中获取它,例如

网址2

$name = $_GET['name'];
$age= $_GET['age'];

当浏览器从Web服务器请求此资源时,Web服务器(例如Apache)将调用php模块,该模块将尝试解析phpscript1.php从而为他提供所需的数据。 在此示例中,我可以看到phpscript1.php文件中的nameage参数,如下所示

 $name = $_GET['name']; $age= $_GET['age']; 


问题 1-在URL1中,我怎么称呼“ abc123” 参数?

Q2在URL1中,Web服务器将如何处理此请求? 它会尝试查找名为"/folder1/abc123"的资源并将其盲目发送到浏览器吗? 例如,如果我在服务器上的文件夹"/folder1/"中有一个名称为"abc123"的文件,它将发送给浏览器吗?

Q3在URL1中,如何在PHP脚本中获取值“ abc123” 甚至更重要的是,PHP模块将调用哪个PHP脚本来处理此请求?

Q1-在URL1中,我怎么称呼“ abc123”? 参数?

这只是路径的一部分。

Q2在URL1中,Web服务器将如何处理此请求? 它会尝试查找名为“ / folder1 / abc123”的资源并将其盲目发送到浏览器吗? 例如,如果我在服务器上的文件“ / folder1 /”中有一个名称为“ abc123”的文件,它将发送给浏览器吗?

这取决于服务器的配置方式。 Apache将查找默认文档,该文档在httpd.conf文件中定义。 它可能会首先查找名为index.html或index.php的文件,但您也可以将其设置为查找其他内容。 除非是文件夹名称,否则可能会假设最后一个/后面的部分是文件名。

Q3在URL1中,如何在PHP脚本中获取值“ abc123”? 甚至更重要的是,PHP模块将调用哪个PHP脚本来处理此请求?

您应该查找$ _SERVER超全局变量。 它可能会具有您要查找的内容:

http://php.net/reserved.variables.server

Q1)默认情况下,URL指向文件夹/folder1和没有扩展名abc123的文件。

如果启用了Mod_rewrite ,则可以通过.htaccess更改url结构,以便像这样显示GET参数。 请参阅这篇文章参考:mod_rewrite,URL重写和“漂亮链接”说明

Q2)默认情况下,它将尝试打开该文件abc123(如果它不存在)-它很可能必须返回404错误。

Q3)我认为这在Q1和Q2中得到了回答。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM