So files will not synchronise with my system, cloudfront just cache them. Am i true?
Yes. That is correct. The CDN gets from your site just the assets that are requested of it.
Discourse will push to S3 static assets (like css and javascript) as well I uploads.
Is it possible to use cloudflare rules to cache static assets like css and javascript?
Yes, we use it that way and it works well. Just be very careful to disable any javascript optimizations. You can see our setup here:
Thanks for the response.
I have already added the second and third rule but I didn’t get the first rule. What’s the need for 301 redirect??
You don’t need it; it’s in the description.
Thanks for the response. What about the static assets like css and javascripts? Any rule possible for css and javascript??
I didn’t test that. I’m not sure that would work. At the very least you’d have to clear your Cloudflare cache after every rebuild.
It’s okay with me to clear the cache after every rebuild. What else would possibly go wrong if I make a rule to cache everything in https://myforum.com/assets/ ? Will this anyway affect user login? If you give a nod, I will test it for a week and report. I still have one unused rule.
Just to clarify, is it correct we do not use this field (as well as CDN URL) if we are using cloudflare CDN?
I have setup cloudflare.template in app.yml as per docs.
Is any further config needed if using cloudflare?
¡Acabo de usar StackPath con éxito como CDN! ¡Funciona como se esperaba!
¿Sigue siendo así hoy en día?
De 2019:
Parece que tenemos que tener especial cuidado y que perdemos algunos de los beneficios de Cloudflare.
De 2020:
De 2021:
Entonces, ¿es Cloudflare fiable y eficiente con Discourse hoy en día? ¿Desactivar la función “Rocket Loader” minimiza los beneficios?
Estaba pensando en pasar de Stackpath a Bunny CDN, pero el propietario del dominio de mi foro y exadministrador tiene una cuenta de Cloudflare Enterprise (es el propietario de tinyURL, por cierto) en la que podría añadir el dominio de forma gratuita (Looking for a decrease in the forum fees in the future - #6 by Gilby - Forum Feedback - Unicyclist.com).
Entonces, me pregunto si es correcto, indoloro y eficaz usar Cloudflare en lugar de Bunny CDN.
Si tiene muchas imágenes, lo que gastará en aumentar el SSD conectado directamente será mucho más costoso que los costos equivalentes de S3.
S3 necesita una CDN delante para ser rentable, ya que se le factura por la entrada y salida, pero sigue siendo mucho más barato que simplemente añadir más SSD de alta velocidad. CloudFlare puede estar delante de S3, pero el almacenamiento en caché de activos es realmente la única función que puede utilizar de forma fiable. Poner CloudFlare entre el cliente y el servidor de aplicaciones también aumentará el número de saltos y la latencia de la aplicación. No es una solución mágica.
No tenemos muchas imágenes. El objetivo de la CDN sería que los activos se carguen rápidamente para todos los usuarios, ya que nuestra comunidad es internacional (principalmente EE. UU. y Europa).
Usamos S3, pero solo para almacenar copias de seguridad.
Pregunta rápida. ¿Es obligatorio volver a hornear después de cambiar nuestra CDN? ¿O es solo si la URL de la CDN es diferente? ¿O no es necesario en absoluto?
edición: ¿o simplemente es posible reemplazar las URL antiguas en las publicaciones horneadas por las nuevas con un script de rails?
Por ejemplo, si tengo una publicación que contiene:
<img class="ytp-thumbnail-image"
src="https://f5i4i8k5.stackpathcdn.com/uploads/default/original/3X/f/3/f3bc5ab19cc0394f33fd008e90ca06e081886a0b.jpeg"
title="Riding a unicycle part 76: Sullivan Canyon - Los Angeles"
width="480"
height="360"
loading="lazy"
style="aspect-ratio: 480 / 360;"
>
¿Podría hacer una búsqueda y reemplazo de cadenas de f5i4i8k5.stackpathcdn.com a newcdn.unicyclist.com sin romper nada? Parece seguro, pero quiero estar seguro de lo que hago.
No me importa volver a hornear todas mis publicaciones, pero el problema que enfrenté la primera vez es que tengo miles de videos de YouTube incrustados, y mi IP fue incluida en la lista negra de YouTube durante el horneado debido a demasiadas solicitudes a YouTube.
Entonces, si hay una alternativa segura a volver a hornear todas las publicaciones y enfrentar el mismo problema molesto, preferiría optar por la alternativa…
Hay una tarea de rake que realizará un reemplazo. Creo que ejecutarla es seguro y una buena idea. Reemplazar una cadena en todas las publicaciones es lo que estás buscando, creo.
Hola Jay,
No estoy seguro de usar la tarea de rake.
Las URL de la CDN parecen estar presentes en los campos cooked en lugar de los campos raw (a menos que el mensaje se haya enviado por correo electrónico).
Por lo que entiendo, post:remap busca la cadena solo en el campo raw.
Si reemplazar las URL de la CDN tanto en los campos raw como en los cooked es seguro, supongo que debería optar por un script personalizado de rails.
Tienes razón. Hay otra… cosa… que reemplazará una cadena en todos los campos de la base de datos. Esa es la que buscas. Lo siento, pero no puedo encontrarla ahora mismo. Hay algunos temas sobre la migración de un s3, pero no parece haber un howto.
¡Gracias por esta pista!
Supongo que es esto?
DbHelper.remap('from', 'to')
Encontrado en Rebaking old posts won't pull new S3 CDN URL after S3 bucket rename - #10 by Brad_Wood
Y usado aquí:
Si es una alternativa segura a un rebake al cambiar nuestro servicio CDN, un howto podría ser útil.
Oh, qué bien. Gracias por hacérmelo saber. Pensé que sería suficiente para que lo encontraras. Me alegro de que lo hayas conseguido.