FreshRSS.Apache.conf 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. ServerName freshrss.localhost
  2. Listen 80
  3. DocumentRoot /var/www/FreshRSS/p/
  4. AllowEncodedSlashes On
  5. ServerTokens OS
  6. TraceEnable Off
  7. ErrorLog /dev/stderr
  8. # For logging the original user-agent IP instead of proxy IPs:
  9. <IfModule mod_remoteip.c>
  10. # Can be disabled by setting the TRUSTED_PROXY environment variable to 0:
  11. RemoteIPHeader X-Forwarded-For
  12. # Can be overridden by the TRUSTED_PROXY environment variable:
  13. RemoteIPInternalProxy 10.0.0.1/8 172.16.0.1/12 192.168.0.1/16
  14. </IfModule>
  15. # Default, will be overridden by p/.htaccess and p/api/.htaccess
  16. SetEnvIfExpr "reqenv('LOG_REMOTE_USER') == ''" LOG_REMOTE_USER=-
  17. SetEnvIfExpr "reqenv('LOG_REMOTE_USER') == '-' && reqenv('REMOTE_USER') =~ /(.+)/" LOG_REMOTE_USER=$1
  18. LogFormat "%a %l %{LOG_REMOTE_USER}e %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined_proxy
  19. CustomLog "|/var/www/FreshRSS/cli/sensitive-log.sh" combined_proxy
  20. <IfDefine OIDC_ENABLED>
  21. <IfModule !auth_openidc_module>
  22. Error "The auth_openidc_module is not available. Install it or unset environment variable OIDC_ENABLED."
  23. </IfModule>
  24. # Workaround to be able to check whether an environment variable is set
  25. # See: https://serverfault.com/questions/1022233/using-ifdefine-with-environment-variables/1022234#1022234
  26. Define VStart "${"
  27. Define VEnd "}"
  28. OIDCProviderMetadataURL ${OIDC_PROVIDER_METADATA_URL}
  29. OIDCClientID ${OIDC_CLIENT_ID}
  30. OIDCClientSecret ${OIDC_CLIENT_SECRET}
  31. OIDCSessionInactivityTimeout ${OIDC_SESSION_INACTIVITY_TIMEOUT}
  32. OIDCSessionMaxDuration ${OIDC_SESSION_MAX_DURATION}
  33. OIDCSessionType ${OIDC_SESSION_TYPE}
  34. OIDCRedirectURI /i/oidc/
  35. OIDCCryptoPassphrase ${OIDC_CLIENT_CRYPTO_KEY}
  36. Define "Test_${OIDC_REMOTE_USER_CLAIM}"
  37. <IfDefine Test_${VStart}OIDC_REMOTE_USER_CLAIM${VEnd}>
  38. OIDCRemoteUserClaim preferred_username
  39. </IfDefine>
  40. <IfDefine !Test_${VStart}OIDC_REMOTE_USER_CLAIM${VEnd}>
  41. OIDCRemoteUserClaim "${OIDC_REMOTE_USER_CLAIM}"
  42. </IfDefine>
  43. Define "Test_${OIDC_SCOPES}"
  44. <IfDefine Test_${VStart}OIDC_SCOPES${VEnd}>
  45. OIDCScope openid
  46. </IfDefine>
  47. <IfDefine !Test_${VStart}OIDC_SCOPES${VEnd}>
  48. OIDCScope "${OIDC_SCOPES}"
  49. </IfDefine>
  50. Define "Test_${OIDC_X_FORWARDED_HEADERS}"
  51. <IfDefine !Test_${VStart}OIDC_X_FORWARDED_HEADERS${VEnd}>
  52. OIDCXForwardedHeaders ${OIDC_X_FORWARDED_HEADERS}
  53. </IfDefine>
  54. # Additional parameters can be set e.g. in /var/www/FreshRSS/p/i/.htaccess
  55. </IfDefine>
  56. <Directory />
  57. AllowOverride None
  58. Options FollowSymLinks
  59. Require all denied
  60. </Directory>
  61. <Directory /var/www/FreshRSS/p>
  62. AllowOverride None
  63. Include /var/www/FreshRSS/p/.htaccess
  64. Options FollowSymLinks
  65. Require all granted
  66. </Directory>
  67. <Directory /var/www/FreshRSS/p/api>
  68. Include /var/www/FreshRSS/p/api/.htaccess
  69. </Directory>
  70. <Directory /var/www/FreshRSS/p/i>
  71. ExpiresActive Off
  72. <IfDefine OIDC_ENABLED>
  73. AuthType openid-connect
  74. Require valid-user
  75. </IfDefine>
  76. IncludeOptional /var/www/FreshRSS/p/i/.htaccess
  77. </Directory>
  78. <Directory /var/www/FreshRSS/p/themes>
  79. Include /var/www/FreshRSS/p/themes/.htaccess
  80. </Directory>