Merge branch 'bugfix/no-cc-mentions' into 'develop'
[akkoma] / lib / pleroma / web / endpoint.ex
index 0a2ac853e768948143b5bc702434ff3c9410b3a5..6673ab5768b5551d535f9d32d97a224f99bba9c4 100644 (file)
@@ -11,13 +11,13 @@ defmodule Pleroma.Web.Endpoint do
   #
   # You should set gzip to true if you are running phoenix.digest
   # when deploying your static files in production.
-  plug(Plug.Static, at: "/media", from: "uploads", gzip: false)
+  plug(Plug.Static, at: "/media", from: Pleroma.Uploaders.Local.upload_path(), gzip: false)
 
   plug(
     Plug.Static,
     at: "/",
     from: :pleroma,
-    only: ~w(index.html static finmoji emoji packs sounds images instance sw.js)
+    only: ~w(index.html static finmoji emoji packs sounds images instance sw.js favicon.png)
   )
 
   # Code reloading can be explicitly enabled under the
@@ -34,7 +34,9 @@ defmodule Pleroma.Web.Endpoint do
     Plug.Parsers,
     parsers: [:urlencoded, :multipart, :json],
     pass: ["*/*"],
-    json_decoder: Jason
+    json_decoder: Jason,
+    length: Application.get_env(:pleroma, :instance) |> Keyword.get(:upload_limit),
+    body_reader: {Pleroma.Web.Plugs.DigestPlug, :read_body, []}
   )
 
   plug(Plug.MethodOverride)
@@ -47,9 +49,14 @@ defmodule Pleroma.Web.Endpoint do
     Plug.Session,
     store: :cookie,
     key: "_pleroma_key",
-    signing_salt: "CqaoopA2"
+    signing_salt: "CqaoopA2",
+    http_only: true,
+    secure:
+      Application.get_env(:pleroma, Pleroma.Web.Endpoint) |> Keyword.get(:secure_cookie_flag),
+    extra: "SameSite=Strict"
   )
 
+  plug(CORSPlug)
   plug(Pleroma.Web.Router)
 
   @doc """