خدمة ملف ثابت

Want to serve a static file at the root of your Discourse server?

Here’s what to do. In the bottom of your app.yml file, down in the custom commands section, do something like this:

## Remember, this is YAML syntax - you can only have one block with a name
run:
  - exec: echo "Beginning of custom commands"
  - file:
     path: /var/www/discourse/public/myfile.txt
     chmod: "+r"
     contents: |
       Stuff that's in the file goes here.
  - exec: echo "End of custom commands"

And . /launcher rebuild app
The file will then be accessible as http://yourserver.com/myfile.txt

12 إعجابًا

What is an actual example of where one would want to do this?

إعجابَين (2)

Personally i find this really useful. Not to mention that this kind of static file, gives you way more opportunities to use your imagination, files, maybe other website service that you can run as static – etc :smiley:

إعجابَين (2)

I’m wondering what “stuff” limitations there are.

contents: |
       Stuff that's in the file goes here.

I imagine simple text strings work well enough, though I also imagine for this to be more useful, markup, links, images, etc. would be desired. I suspect that the more closely “stuff” approaches being a web page the more difficult it would be to not break.

@pfaffman what is your use case and what degree of complexity have you been able to do successfully?

إعجاب واحد (1)

This can also help verifying ownership of the site, e.g. with Google Webmaster Tools :slight_smile:

5 إعجابات

Site ownership verification can be done with a meta tag in the head as well.

6 إعجابات

Well, you’ve seen the actual examples that I know about. There are ways not to need it, but I’ve wanted to do this a few times and finally bothered to figure it out. :slight_smile:

3 إعجابات

Very interesting and useful. Can this be tweaked to allow many files to be dumped into a folder for access? Say you want to make /var/www/discourse/public/img so that yourserver.tld/img/step_1.png can be served up easily and any number of subsequent files that are scp’d or uploaded in some way to the server?

إعجاب واحد (1)

Why would you use an application server to serve files? Wouldn’t it be cheaper to store and serve them elsewhere?

Not in my particular use case. I would prefer to do this for certain files that are specifically useful for admin purposes.

إعجاب واحد (1)

أنا أستخدم عامل Cloudflare لهذا الغرض:

إعجابَين (2)

ماذا عن الاستضافة المدفوعة؟ هل هناك طريقة لتحقيق ذلك؟

أحتاج إلى التحقق من ملكية النطاق باستخدام semrush لمشروعي. لا أريد أن يقوم الآخرون الذين يستخدمون semrush بتدقيق موقعي.

سأجرب هذه الطريقة لاحقًا إذا لم تنجح الطريقة الأصلية :slight_smile:

أنا أفضل ما يقوله الطبيب :smiley:

إعجاب واحد (1)