2

嗨,我试图通过网站开发 MVC 模式,从一开始我需要获取 url 我试过这样

echo $url= $_GET['url'];
echo $url;

如果我使用这样的网址http://localhost/autolink/index/sdsad 它想显示“index/sdsad”但它没有显示任何内容,这有什么问题?可能是版本问题?因为在另一台机器上使用它正在工作..

这是我当前的 .htaccess:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
4

2 回答 2

4

如果那个 url 在另一台机器上工作,那么你就有了某种重写规则。你可能有类似的东西:

RewriteEngine On
RewriteRule ^autolink/.* autolink.php/?url=$0 [QSA,PT]

这将使 index/sdsad 作为查询字符串中的 url 参数传入。

你的例子对我有用,暗示你要么

  1. 不要打开 mod_rewrite
  2. 不要启用“允许覆盖”

最简单的检查方法(假设这不是生产服务器)是编辑 .htaccess 文件并在第一行输入类似“POOP”的内容。如果您开始收到 500 个错误,则上述 1 和 2 不适用。

于 2012-05-01T05:27:56.420 回答
0

我使用 Visual Studio 2019 和 IIS 的 PHP 工具开发了 Visual Studio 2019 社区的 PHP 项目。我在测试 MVC 模式时遇到了同样的问题,但不起作用的 $_GET['url'] 开始使用 $_SERVER['REQUEST_URI']。

于 2022-01-28T16:04:07.557 回答