আমি কীভাবে হিরোকুতে ফ্যাভিকন স্থাপন করব?


11

Hello worldআমার হিরোকু অ্যাপ্লিকেশানের জন্য আমার কাছে নিম্নলিখিত কোড রয়েছে। আমার প্রকল্পের মূল ফোল্ডারেও আমার একটি রয়েছে favicon.ico

import os
from flask import Flask
app = Flask(__name__)

html = '''
<!doctype html>
<html>
  <head>
    <link rel="shortcut icon" href="/webmasters//favicon.ico">
    <title>Hello world!</title>
  </head>
  <body>
    <p>Hello world!</p>
  </body>
</html>
'''

@app.route('/')
def index():
    return html

if __name__ == '__main__':
    port = int(os.environ.get('PORT', 5000))
    app.run(host='0.0.0.0', port=port)

আমি যখন আমার অ্যাপ্লিকেশনটিতে ব্রাউজ করি, তখন আমি একটি দেখতে পাই না favicon। এছাড়াও, যখন আমি যাচাই করি heroku logs, আমি নিম্নলিখিত 404লাইনটি পাই :

2012-02-14T05:23:29+00:00 app[web.1]: <ip.ad.dr.es> - - [14/Feb/2012 05:23:29] "GET /favicon.ico HTTP/1.1" 404 -

উত্তর:


6

আমি এখনই এটি পেয়েছি: http://flask.pocoo.org/docs/patterns/favicon/

আমি এটি থেকে কিছুটা আলাদা ছিলাম এবং আমি যা করেছি তা এখানে:

  1. আমার গাছে, আমি আইকনটি হিসাবে সংরক্ষণ করি static/images/favicon.ico
  2. এইচটিএমএলে, আমার মধ্যে নিম্নলিখিত লাইনটি রয়েছে <head>:

    <link rel="shortcut icon" href="/webmasters//favicon.ico">
    
  3. আমার ফ্লাস্ক অ্যাপ্লিকেশনটিতে, আমার কাছে নিম্নলিখিত ইউআরএল হ্যান্ডলারটি রয়েছে /favicon.ico

    @app.route('/favicon.ico')
    def favicon():
        return send_from_directory(os.path.join(app.root_path, 'static', 'images'),
                                   'favicon.ico', mimetype='image/png')
    

    কেন image/png? কারণ আমি যদি ব্যবহার করি image/vnd.microsoft.iconতবে আমি ব্রাউজ http://myapp.heroku.com/favicon.icoকরব, আমি একটি ডাউনলোড ডায়ালগ বাক্স পেয়েছি। image/pngকেবল পৃষ্ঠায় ফ্যাভিকন প্রদর্শন করুন (কমপক্ষে ক্রোমে)।


2

আমি আমার ফ্যাভিকন.ইকো চিত্রটি আমার public/ফোল্ডারে আমার রেল অ্যাপগুলিতে রেখেছি। তারপরে আমি হিরকুতে নিযুক্ত হয়েছি এবং নতুনটি প্রদর্শিত হওয়ার আগে আমার ব্রাউজারের ক্যাশেটি সাফ করতে হয়েছিল।


1

আমি যা ব্যবহার করি তা এখানে:

<link rel="shortcut icon" type="image/x-icon" href="/webmasters//favicon.ico">

আমি বিশ্বাস করি যে "শর্টকাট" ইন্টারনেট এক্সপ্লোরারের জন্য সেখানে থাকা উচিত (যদিও আইই সাধারণত নির্বিশেষে ফ্যাভিকনের জন্য যাচাই করবে)।

তবে, মনে হচ্ছে আইকনটি ভুল জায়গায় রয়েছে। আপনার মাধ্যমে এটি অ্যাক্সেস করতে সক্ষম হওয়া উচিত yoursite.com/favicon.ico। আপনি গুগল ক্রোমে পৃষ্ঠা উত্সটি দেখেও পরীক্ষা করতে পারেন এবং /favicon.icoএকটি আন্ডারলাইনড লিঙ্ক হবে - আপনার নির্দিষ্ট করা অবস্থানটি খুলতে ক্লিক করুন।

আপডেট: আপনার কাছে একটি .htaccessফাইল আছে? আপনি যা বলেছেন তা থেকে মনে হচ্ছে অ্যাপটিকে বাইপাস করার জন্য আপনাকে বিদ্যমান ফাইলগুলির ব্যতিক্রম করতে হবে। আপনি যদি অ্যাপাচি ব্যবহার করে থাকেন তবে আপনি এরকম কিছু ব্যবহার করতে পারেন:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule your_rule_here [L]

আপনি যে প্ল্যাটফর্মটি ব্যবহার করছেন তার সমতুল্য হওয়া উচিত।


এটি কি ফ্লাস্কে? আমার মনে হয় ফ্লাস্ক এতে প্রেরিত প্রতিটি URL- এর জন্য একটি হ্যান্ডলার স্ক্রিপ্ট সন্ধান করে। আমি এখনও 404 এর পেতে।
কিট

@ কিট দুঃখিত, সত্য বলতে আমি হিরোকু বা ফ্লাস্ক সম্পর্কে কিছুই জানি না। আমি কেবল ধরে নিয়েছি অ্যাপটি ভাল কাজ করেছে তবে কিছু ভুল এইচটিএমএল আউটপুট করেছে।
অসন্তুষ্ট গোয়াট
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.