【问题标题】:How to print URL without extension? - Python如何打印没有扩展名的 URL? - Python
【发布时间】:2015-09-19 04:54:00
【问题描述】:

我想知道如何制作这样的链接 - www.google.com/search

'/search' 是一个目录吗?我真的需要帮助。我愿意用 Python 做一个网站,也愿意用 Python 做一个新手。

就像,我想打印这个 - http://www.mywebsite.com/search

他们是否将 .htaccess 用于此目的?

谢谢。

【问题讨论】:

    标签: python url


    【解决方案1】:

    如果您想尝试使用Flask,您将使用所谓的“路由”来定义您的内容可以存在的各个页面。

    在您的示例中,他们定义了一个名为 /search 的路由,然后它将提供一些内容。

    这是 Flask 文档中的另一个示例:http://flask.pocoo.org/docs/0.10/quickstart/#routing

    如果您曾经使用 FTP 和普通的旧 html 创建一个网站,那么这与您可能习惯的不一样,您可能有一个像 www.mywebsite.com/code/ranjan.html 这样的 URL。在这种情况下,URL 实际上 指向文件夹和文件。

    但是“新”方法(好的、正确的方法)是使用带有干净的 URL 的 URL 路由来指向您的内容。

    您可能还想尝试阅读 Django 文档中有关 url dispatching 的部分,以提供更多想法。 (Django 是另一个用于制作网站的 Python 框架。)

    编辑:至于您关于 .htaccess 的问题,是的,您可以使用 .htaccess 进行 URL 重写,但 Flask、Django 和其他 Web 框架将使您无需这样做。 Here is an example.

    【讨论】:

      【解决方案2】:

      不,在这种情况下,search 很可能不是目录。它是一个映射为调用服务器上的某个函数的 URL,该函数向客户端返回响应。 Python 框架 Flask 中的一个简单示例如下所示:

      @app.route('/search')
      def search():
          # search for some stuff
          return some_response # how you would go about doing this will vary depending on your application.
      

      因此,当您的服务器收到对/search URL 的请求时,您的search() 函数中的代码将被执行。这在不同的框架中以不同的方式完成,但概念是相同的:

      • 您的服务器收到有关 URL 的请求
      • 您的应用程序在您的 URL 配置中找到该 URL(Flask 中的装饰函数、一个 urls.py 文件 Django 等)以及它映射到的方法/函数
      • 它执行函数并以您定义的方式返回结果

      这就是 Flask、Django、Bottle 和 Pyramid 大部分工作的方式(有很多不同,但想法是相同的),我相信在许多其他语言和框架中也是如此。

      我建议学习 FlaskBottle 开始,因为它们都很简单。 Django 很复杂,但是网站上的教程很不错。

      【讨论】:

      • 是的,这就是解决方案。谢谢兰。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-12-26
      • 1970-01-01
      • 2020-05-31
      • 1970-01-01
      相关资源
      最近更新 更多