【问题标题】:PHP read the URL for search (Apache)PHP 读取 URL 进行搜索 (Apache)
【发布时间】:2014-10-09 11:19:48
【问题描述】:

我需要在

url: domain.com/search/hola

忽略这个hola(所以转到/search/index.php)但在一个php变量中包含这个hola

例如,我在浏览器中输入domain.com/search/google,然后使用代码转到domain.com/search/index.php

$search = $_GET['url']; //(obviously, this doesn't works)<br>
print_r($url);

类似的东西:http://example.com/ 把你放的东西放到同一个网站上。

【问题讨论】:

  • 看看$_SERVER['PATH_INFO']
  • 你的代码在哪里?!
  • 该 URL 是否已重定向到您的 index.php?如果没有,.htaccess 文件中的RewriteRule 可以做到这一点。

标签: php apache url search


【解决方案1】:

您可以使用 RewriteRule 来做到这一点。

将模块 mod_rewrite 安装到您的 Apache 中。根据您的服务器和操作系统,说明可能会有所不同,但大多数情况下已安装。

检查您的 Apache 站点配置中是否指定了 AllowOverride All 以允许 .htaccess 文件。

在您的网络服务器的根文件夹中创建一个 .htaccess 文件。

RewriteEngine On
RewriteRule    ^/search/(.*)    /search/index.php?param=$1    [L,QSA]

如果您对 apache 配置进行任何更改或安装新模块,则必须重新启动 apache 服务。 .htaccess 文件中的更改不需要重新启动。

【讨论】:

  • 错误:RewriteRule:无法编译正则表达式'^/search/(*.)'
  • 修复:RewriteRule ^/search/(.*) /search/index.php?param=$1 [L,QSA]
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-07-31
  • 1970-01-01
  • 2011-02-20
  • 2019-11-16
相关资源
最近更新 更多