【问题标题】:php - clean URLphp - 干净的 URL
【发布时间】:2010-05-15 09:55:00
【问题描述】:

我想用纯 PHP 创建一个网站。我想隐藏 url 参数。 IE。我想用干净的网址制作我的网站。有没有办法在不使用任何框架的情况下做到这一点? cURL 有帮助吗?

【问题讨论】:

    标签: php url


    【解决方案1】:

    如果您不想或不能使用.htaccess,请参阅URL rewriting in PHP without .htaccess,否则请参阅How to: URL rewriting in PHP?

    【讨论】:

      【解决方案2】:

      看看吧……在你开始你的东西之前

      http://httpd.apache.org/docs/2.0/misc/rewriteguide.html
      

      【讨论】:

        【解决方案3】:

        首先:仅使用 PHP 是不可能的(至少不是我在阅读干净 URL 时想到的 URL 形式)。 Web 服务器需要知道如何处理请求以及将哪些请求传递给您的 PHP 脚本。否则你可能只会得到 404 响应。

        因为 Web 服务器的默认行为是只获取请求的 URL 路径并尝试将其映射到文档根目录下的现有文件。如果找到了相应的文件,则文件的内容将被传回客户端,或者——与 PHP 文件一样——文件的内容被传给适当的解释器,并将返回的数据传回客户端。如果没有找到该文件,那么它会以状态码 404 进行响应。所以在某些时候您需要配置您的 Web 服务器。

        但是在那之后,当请求被传递到您的 PHP 脚本时,您肯定可以只使用 PHP 来建立干净的 URL。我宁愿建议使用 PHP 而不是使用 Web 服务器实用程序。因为您的 PHP 应用程序应该最清楚如何处理请求的 URL。

        在 PHP 中,所有必需的信息都在$_SERVER variable

        • $_SERVER['REQUEST_URI'] 保存请求的 URL 路径和查询(您可以使用 parse_url 解析它),并且
        • $_SERVER['PATH_INFO'] 持有 PATH_INFO 如果您正在使用它(请参阅 Apache’s AcceptPathInfo directive)。

        【讨论】:

          【解决方案4】:

          不,没有 curl 或框架这样做。也不是 php。
          处理 url 的是 web 服务器
          因此,如果您想要假网址,则必须设置您的网络服务器以将某些网址重定向到某些脚本。
          最常见的方法是使用带有 mod_rewrite 模块的 Apache Web 服务器

          【讨论】:

            【解决方案5】:

            根据我的阅读和理解,有两种方法可以做到这一点:

            1. 第一个是mod_rerite,通过.htaccess 文件重写规则,一切似乎都得到了调整,这很容易做到,但会给大型网站的网络服务器带来很大的负载
            2. 使用 PHP 来控制重传,这确实使用了.htaccess,但只是将所有内容重定向回 index.php,调度程序会根据需要重新路由路径。 phpvideotutorials.com 上有一个很棒的教程,该教程称为 tumblelog。

            【讨论】:

              【解决方案6】:

              尝试重写url using php和重写url using .HTACCESS

              例如原始网址,

              www.domain.com/item.php?product=Cars for sale in amazon 
              

              用php

              www.domain.com/item.php?product=Cars-for-sale-in-amazon
              

              并带有 .HTACCESS 文件

              www.domain.com/Cars-for-sale-in-amazon 
              

              【讨论】:

                猜你喜欢
                • 2017-11-13
                • 1970-01-01
                • 2014-05-19
                • 1970-01-01
                • 2014-09-23
                • 1970-01-01
                • 2011-02-21
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多