اذهب إلى المحتوى

السؤال

نشر

الملفات مثل robots.txt و sitemap.xml من المفترض أن تكون في المسار الرئيسي للموقع:

https://www.example.com/robots.txt
https://www.example.com/sitemap.xml

لكن المشكلة أنه عند إضافة مثل هذه الملفات في المجلد static، لا يمكن الوصول إليها إلا من خلال المسارات التالية:

https://www.example.com/static/robots.txt
https://www.example.com/static/sitemap.xml

هل توجد طريقة لإضافة هذه الملفات في المجلد static، بحيث يمكن الوصول إليها بدون كتابة كلمة static في المسارات السابقة؟

Recommended Posts

  • 1
نشر

يمكن القيام بهذا الأمر من خلال تغير مسار المجلد static الإفتراضي حتي يمكنك الوصول إلى محتويات المجلد المباشرة من خلال كتابة اسم الملف بعد النطاق domain مباشرة، ويتم هذا الأمر من خلال الخاصية static_url_path، حيث يتم إستخدام نص فارغ للتعبير عن المسار الرئيسي للمجلد:

from flask import Flask

app = Flask(__name__, static_folder='static', static_url_path='')

يمكنك أيضًا أن تقوةم بعمل مسارات مخصصة لهذه الملفات، ثم إرسال محتوى هذه الملفات من خلال الدالة send_from_directory :

from flask import Flask, request, send_from_directory

app = Flask(__name__, static_folder='static')    

@app.route('/robots.txt')
@app.route('/sitemap.xml')
def static_from_root():
    return send_from_directory(app.static_folder, request.path[1:])

بهذا الشكل يمكنك أن تصل إلى الملفات من خلال العناوين:

https://www.example.com/robots.txt
https://www.example.com/sitemap.xml

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...