URL リダイレクトは、運用 Web サイトを維持するための基本的な部分です。 Web サイトのある部分から別の部分にユーザーをリダイレクトする 理由 にはさまざまな理由がありますが、ユーザー エクスペリエンスを向上させ、SEO (検索エンジン最適化) を可能な限り最大限に維持するには、適切にリダイレクトすることが重要です。 .
Django には、リダイレクトの管理に役立つ組み込みのリダイレクト アプリが付属していますが、公式ドキュメントは初心者にとって特に親切ではないため、このチュートリアルを参照してください。
Django リダイレクトを設定する
Django リダイレクト アプリは、サイト フレームワークと連携して動作します。これも組み込みではありますが、自動的にはインストールされません。 Django 開発者として、両方を完全に使用するには、いくつかのセットアップが必要です。
サイト フレームワークを構成するには、それを settings.py の INSTALLED_APPS 構成に追加し、SITE_ID を設定します。サイトが 1 つだけある Web アプリケーションを 1.
と定義するのが通例です。
# settings.py INSTALLED_APPS = [ "django.contrib.admin", "django.contrib.auth", "django.contrib.contenttypes", "django.contrib.sessions", "django.contrib.messages", "django.contrib.staticfiles", "django.contrib.sites", # new ] SITE_ID = 1 # new
完全を期すため、今すぐ移行を実行してデータベースを更新する必要があります。
(.venv) $ python manage.py migrate Operations to perform: Apply all migrations: admin, auth, contenttypes, sessions, sites Running migrations: Applying sites.0001_initial... OK Applying sites.0002_alter_domain_unique... OK
Sites フレームワークと同様に、リダイレクト アプリはデフォルトで Django に含まれていますが、いくつかの構成が必要です。 INSTALLED_APPS、MIDDLEWARE を更新し、データベースの移行を再度実行します。ミドルウェアは HTTP リクエストの場合は上から下に実行されるため (HTTP レスポンスの場合は下から上に実行されますが、これについては別の機会に説明します)、ミドルウェアを追加する場合、適切に動作させるにはミドルウェアを下位近くに配置する必要があることに注意してください。
# settings.py INSTALLED_APPS = [ "django.contrib.admin", "django.contrib.auth", "django.contrib.contenttypes", "django.contrib.sessions", "django.contrib.messages", "django.contrib.staticfiles", "django.contrib.sites", "django.contrib.redirects", # new # other local and 3rd party apps ] MIDDLEWARE = [ "django.middleware.security.SecurityMiddleware", "django.contrib.sessions.middleware.SessionMiddleware", "django.middleware.common.CommonMiddleware", "django.middleware.csrf.CsrfViewMiddleware", "django.contrib.auth.middleware.AuthenticationMiddleware", "django.contrib.messages.middleware.MessageMiddleware", "django.middleware.clickjacking.XFrameOptionsMiddleware", # ... any other custom middleware ... "django.contrib.redirects.middleware.RedirectFallbackMiddleware", # new ]
次に、移行を実行して、リダイレクト アプリが動作するために必要なデータベース テーブルを作成します。
(.venv) $ python manage.py migrate Operations to perform: Apply all migrations: admin, auth, contenttypes, redirects, sessions, sites Running migrations: Applying redirects.0001_initial... OK Applying redirects.0002_alter_redirect_new_path_help_text... OK
セットアップが完了しました。これを使用するための 2 つの異なるアプローチを見てみましょう。
アプローチ 1: 管理インターフェイス
Django 管理者は、コードを書かずにリダイレクトを管理するための使いやすい方法です。これは、少数のリダイレクトをすばやく設定する場合や、技術者以外のチーム メンバーに最適です。
管理者にログインします。[リダイレクト] セクションと [サイト] セクションが表示されます。
リダイレクトの横にある「+追加」ボタンをクリックします。サイト、「リダイレクト元」パス、「リダイレクト先」パスを選択するフォームが表示されます。ページに記載されているように、前者には絶対パスを使用し、後者には絶対パスまたは完全な URL を使用します。
ここでは、「example.com/old」から「example.com/new」へのリダイレクトを追加する例を示します。
保存すると、メインの「リダイレクト」ページに移動し、既存のすべてのリダイレクトを表示および編集できます。
サイトの「example.com」部分を変更する場合は、「サイト」セクションをクリックすると、ドメイン名または表示名を更新できます。表示名は人間が読めるサイトの名前で、管理者や識別用のテンプレートで使用されます。ドメイン名は、サイトマップなどで URL の生成と検証に使用されます。
次のステップ
リダイレクト アプリはデフォルトで永続 (301) リダイレクトを使用します。これは通常、SEO 目的で必要なものです。大量のリダイレクトがパフォーマンスに影響を与える可能性があるため、定期的にリダイレクトを確認し、運用 Web サイトのパフォーマンスを監視することが重要です。これが問題となる場合は、キャッシュ オプションを検討することをお勧めします。また、ローカル環境、ステージング環境、実稼働環境間の移行を容易にするために、新しいパスには相対 URL を使用することを忘れないでください。最後のヒントは、リダイレクトが期待どおりに機能していることを確認するテストを追加することです。
Django Web サイトの SEO を最適化するための追加のヒントが必要な場合は、このトピックに関するチュートリアルのリストを確認してください。
以上がDjango リダイレクト アプリのチュートリアルの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

pythonisbothcompiledinterted.whenyourunapythonscript、itisfirstcompiledintobytecode、これはdenepythonvirtualmachine(pvm).thishybridapproaChallowsforplatform-platform-denodent-codebutcututicut。

Pythonは厳密に行ごとの実行ではありませんが、最適化され、インタープレーターメカニズムに基づいて条件付き実行です。インタープリターは、コードをPVMによって実行されるBytecodeに変換し、定数式または最適化ループを事前促進する場合があります。これらのメカニズムを理解することで、コードを最適化し、効率を向上させることができます。

Pythonに2つのリストを接続する多くの方法があります。1。オペレーターを使用しますが、これはシンプルですが、大きなリストでは非効率的です。 2。効率的ですが、元のリストを変更する拡張メソッドを使用します。 3。=演算子を使用します。これは効率的で読み取り可能です。 4。itertools.chain関数を使用します。これはメモリ効率が高いが、追加のインポートが必要です。 5。リストの解析を使用します。これはエレガントですが、複雑すぎる場合があります。選択方法は、コードのコンテキストと要件に基づいている必要があります。

Pythonリストをマージするには多くの方法があります。1。オペレーターを使用します。オペレーターは、シンプルですが、大きなリストではメモリ効率的ではありません。 2。効率的ですが、元のリストを変更する拡張メソッドを使用します。 3. Itertools.chainを使用します。これは、大規模なデータセットに適しています。 4.使用 *オペレーター、1つのコードで小規模から中型のリストをマージします。 5. numpy.concatenateを使用します。これは、パフォーマンス要件の高い大規模なデータセットとシナリオに適しています。 6.小さなリストに適したが、非効率的な追加方法を使用します。メソッドを選択するときは、リストのサイズとアプリケーションのシナリオを考慮する必要があります。

compiledlanguagesOfferspeedandsecurity、foredlanguagesprovideeaseofuseandportability.1)compiledlanguageslikec arefasterandsecurebuthavelOnderdevelopmentsplat dependency.2)

Pythonでは、forループは反復可能なオブジェクトを通過するために使用され、条件が満たされたときに操作を繰り返し実行するためにしばらくループが使用されます。 1)ループの例:リストを通過し、要素を印刷します。 2)ループの例:正しいと推測するまで、数値ゲームを推測します。マスタリングサイクルの原則と最適化手法は、コードの効率と信頼性を向上させることができます。

リストを文字列に連結するには、PythonのJoin()メソッドを使用して最良の選択です。 1)join()メソッドを使用して、 '' .join(my_list)などのリスト要素を文字列に連結します。 2)数字を含むリストの場合、連結する前にマップ(str、数字)を文字列に変換します。 3) '、'などの複雑なフォーマットに発電機式を使用できます。 4)混合データ型を処理するときは、MAP(STR、Mixed_List)を使用して、すべての要素を文字列に変換できるようにします。 5)大規模なリストには、 '' .join(lage_li)を使用します

pythonusesahybridapproach、コンコイリティレーショントビテコードと解釈を組み合わせて、コードコンピレッドフォームと非依存性bytecode.2)


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

DVWA
Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

SAP NetWeaver Server Adapter for Eclipse
Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

PhpStorm Mac バージョン
最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール
