问题标签 [pathinfo]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
506 浏览

apache2 - 如何在 Rackspace 云站点上获取 apache 以提供具有额外路径信息的脚本?

我在 Rackspace 云站点上运行一个站点(我无权访问 apache 配置,但我可能会要求他们更改某些内容或使我能够进行更改)。

我有一个名为 feeds.php 的脚本,我想将它放在文档根目录中,以便在请求 /feeds/news 或 /feeds/photos 等 uri 时调用它。

我在我直接控制的机器上运行的所有 apache 服务器似乎都默认执行此操作。当我将 feeds.php 放在我的其他 apache 站点上时,它会按我的意愿工作。但它不适用于 Rackspace 云站点。我已经向他们开放了一张票,但我试图了解它导致此功能的原因,以便我将来可以自己修复它(或者至少更好地向 Rackspace 描述我需要的支持)。

我已经浏览了正在运行的服务器上的所有 Apache 配置,并且我没有任何 RewriteRules 或任何可以做到这一点的东西。

您知道哪些配置选项使 Apache 服务器 url 成为这种 fasion 吗?

0 投票
4 回答
118 浏览

php - 图片 url 无法通过 if 语句

我将图像 url 发布到 php 脚本。在这个 php 脚本中,我获取图像 url 并检查扩展名是什么,以及此扩展名是否与几个扩展名匹配:

但即使我发布了一个类似的网址:http ://www.test.com/picture.jpg并且他得到了扩展名,在这种情况下是 jpg,他仍然通过 if 语句,说扩展名不等于if 语句中提到的一个。

我不知道我做错了什么?

0 投票
3 回答
994 浏览

php - 字符串匹配后从文本文件中获取文件名 - PHP

我有一个日志文件 ( log.txt),格式为:

注意:每个文件名的格式为:3lettersdatesomename_LO.pdf/indd。示例:MNM011112ThisFile_LO.pdf。此外,在给定的日期和时间,条目可能只有错误,只有关于创建的文件的消息或两者都有,就像我在这里展示的那样。

文件以这种方式继续。而且,我有一个表格形式的数据库:

等等...

现在,我应该浏览日志文件,并且对于创建的每个文件,或者如果有错误,我应该使用适当的消息更新 DB 的最后一列:文件创建或错误。我想搜索字符串“PDF 文件已创建/错误”,然后获取文件名。

我已经尝试过各种各样的事情,比如pathinfo()strpos。但是,我似乎无法理解我将如何完成它。

有人可以为我提供一些关于如何解决这个问题的意见吗?txt 文件和数据库非常庞大。

注意:我提供了日志文件的第二个条目,以明确错误出现的格式不一致。我想知道我是否仍然可以通过不一致的错误格式来实现我应该达到的目标。有人可以在再次阅读整个问题后提供帮助吗?与我第一次发布此内容相比,发生了很多变化。

0 投票
1 回答
3347 浏览

nginx - 别名环境中的 nginx path_info

我需要使用 php-fpm 在 nginx 上运行它:

问题似乎是, /studip 不是根目录下的子文件夹,而是 /usr/local/studip/public/ 的别名

这是没有(非工作)path_info foo 的配置:

还有 fastcgi_params:

我尝试了一个子域,其中 root 指向 /usr/local/studip/public/ 并让它与这个参数一起工作:

但我不知道如何将其移植到子文件夹。

有什么建议么?

0 投票
5 回答
4309 浏览

php - PHP 从数组中查找域名和域扩展名

我有一组数据,其中包含一些带有 TLD 扩展名的域。我想分别收集域名和 TLD 扩展名。

例如,从“hello.com”我想收集“hello”作为一个变量,然后收集“.com”作为另一个变量。

另一个重要的例子,从“hello.co.uk”我想收集“hello”作为一个变量,然后收集“.co.uk”作为另一个变量。

我当前使用 pathinfo() 的代码将在“hello.com”上正常工作,但不能在“hello.co.uk”上正常工作。对于“hello.co.uk”,它将收集“hello.co”作为一个变量,然后收集“.uk”作为另一个变量。

这是我正在使用的代码:

希望我解释得足够好。我经常使用stackoverflow,但找不到一个具体的例子。

谢谢

0 投票
1 回答
2482 浏览

php - .htaccess 在传递给模板之前重写 PATH_INFO 变量为空;不从 url 中删除 index.php

大家早上好,我希望这将是一件容易的事!(我还没喝咖啡呢,怎么起这么早?!)

无论如何.. 为您提供了一个两部分: 第一个(基本)问题,我试图从我的链接中删除 index.php(这似乎几乎是不可能的,感谢 hostgator :))。经过一堆搜索,我已经到了 /page 重定向到 /index.php/page 的地步。现在这总比没有好,但当然仍然不理想。我必须使用 [R] 来做到这一点。我的 .htaccess 是:


第二个(硬)问题我需要从 url 中删除 index.php,但仍要确保显示正确的页面控制器(即 url 中的页面)。我正在使用 PATH_INFO 来获取 var 并显示正确的页面,并且当 index.php 存在时它可以工作。

但是由于某种原因,当您从最后一个 RewriteRule 中取出 R 时,/page 总是默认为主 index.php 模板。这就像 .htaccess 或任何在我的网站可以处理页面之前将 PATH_INFO 重写为空的东西。我想我需要在 .htaccess 重写它之前锁定 PATH_INFO 。

对于我坚持的一些测试var_dump(path_segments()); ,当在 /index.php/page 上时它给出:array(2) { [0]=> string(0) "" [1]=> string(10) "proper-page" }. 但是,当您将 R 从上述重写规则中取出并仅使用 /page 进行访问时,它只会给出: array(2) { [0]=> string(0) "" [1]=> string(0) "" }.


现在我什至不知道我是否需要担心第二个问题,如果有一个简单的方法来做第一个。但至少这就是我现在想要弄清楚的一切。感谢我能得到的所有帮助!

0 投票
3 回答
540 浏览

php - PHP中的PATH_INFO没有明显的文件

我有一个简单的脚本:

索引.php:

当我像这样运行它时,www.website.com/index.php它可以工作。即)www.website.com/index.php/hello会回声/hello

但是,如果我去www.website.com/hello,当我想要的/hello是回显时,我会收到一个 URL not found 错误。

我如何做到这一点,这样index.phpPATH_INFO 就可以工作了?!

0 投票
3 回答
3882 浏览

frameworks - NGINX 配置。带有 PATHINFO 404 的 PHP 框架

我通常使用 apache,想试试 NGINX。

我已经将它安装在我的 ubuntu 开发机器上,并设置了一些不同的框架和站点并正在开发中(codeigniter、symfony、laravel 等)。

我遇到的问题是只有以.php工作结束的路径。如果我index.php/welcome/index只尝试 404s 而不是加载 index.php。

我尝试将 cgi.fix_pathinfo 设置为 1 和 0。

这是我当前(许多尝试过的)站点配置。

0 投票
2 回答
200 浏览

php - Finding path name to use as a slug for custom built cms with PHP

I'm building a website with a custom content management system, and I want to build a slug area like wordpress. I want to retrieve the path name from my front-end depending on the page they're on, and echo that out in my backend in the slug area.

I'm using php and my front-end is dynamic, which means I have one page, and depending on what the user clicks on, I will include that file.

What I want the code to look like for the slug in the backend:

My front-end path looks something like this: blahblah/index.php/slug-name

I have a slug stored in the database that I will echo out, but my problem is I don't know how to retrieve the front end path and echo it out in the backend. I realize I can type the front-end path manually, but I think doing it dynamically would be better incase I move my website to a different location in the future.

I've tried using pathinfo or $_SERVER but that echos out my backend path rather than my front end.

Hopefully I was clear, if not, ask me to clarify something. Thanks again.

0 投票
1 回答
851 浏览

apache - PATH_INFO 的弃用 .htaccess 规则被破坏

最近我的托管服务提供商一直在将他们的 apache 系统更新到 2.4.4。在这样做时,它导致我的表达式引擎站点中断,因为我现在需要强制查询字符串以使站点运行。

据我了解,您只需将 .htaccess 规则中的一行更新为 ...

不幸的是,解决这个问题并不像这样简单。

我的网站使用自定义表达式引擎插件来检测他们使用 IP to Nation 模块在世界的哪个区域。基本上发生的情况是,如果您来自美国,您会看到包含美国内容的网站,如果您来自其他任何地方,它会将“国际”附加到 URI 的第一部分,它将根据第一部分显示国际内容我们的 URI

例如

当我尝试将该查询字符串添加到 index.php 的 rewriteRule 时,它​​会破坏国际站点,我不知道为什么。

添加“?” 修复RewriteRule ^(.*)$ /index.php?/$1 [L]美国网站但打破国际网站说它找不到国际页面。

添加“?” 修复RewriteRule /international/(.*)$ /index.php?/$1 [L]国际站点,但美国站点将无法工作,因为它需要查询字符串。

并且将它添加到它们两者都将不起作用。

我显然在 .htaccess 中遗漏了一些东西来克服这个问题,但我似乎无法生成正确的语法。

有任何想法吗?