Hi All, I would like to share the info regarding, how to setup RADOS with latest Apache 2.4.x versions.
Please find below additional steps to setup, which are kind of updates to ceph documentation. Steps: 1) If you are planning to use Apache 2.4 versions, You cannot build FastCGI module against it. Because FastCGI is not updated according to new changes in Apache code. So Please use attached patch to build mod_fastcgi 2.4.6 version against Apache 2.4.3 2) Tool "apxs", generated by apache build is used for building mod_fastcgi.so module. Here make sure, this tool script should use apache 2.4.3 headers. For that, build apache 2.4.3 on host machine and give its headers path in "apxs" script utility. 3) Command to build mod_fastcgi code #cd mod_fastcgi-2.4.6 #<Path to apxs>/apxs -o mod_fastcgi.so -c *.c You can find mod_fastcgi.so in .libs directory, which you can load in to apache 2.4.3 without any issues 3) Once you configure configurations as mentioned in Ceph documentation . Now please replace authorization flags as below in rgw.conf *Order* Allow,deny *Allow* from All --------->>> *Require* all granted Best of Luck. Srinivas.
--- mod_fastcgi-2.4.6/fcgi.h 2007-09-23 22:03:29.000000000 +0530 +++ mod_fastcgi-2.4.6.new/fcgi.h 2014-05-04 17:53:33.332050696 +0530 @@ -57,10 +57,10 @@ #define XtOffsetOf APR_OFFSETOF #define ap_select select -#define ap_user_id unixd_config.user_id -#define ap_group_id unixd_config.group_id -#define ap_user_name unixd_config.user_name -#define ap_suexec_enabled unixd_config.suexec_enabled +#define ap_user_id ap_unixd_config.user_id +#define ap_group_id ap_unixd_config.group_id +#define ap_user_name ap_unixd_config.user_name +#define ap_suexec_enabled ap_unixd_config.suexec_enabled #ifndef S_ISDIR #define S_ISDIR(m) (((m)&(S_IFMT)) == (S_IFDIR)) @@ -352,83 +352,82 @@ #ifdef APACHE2 #ifdef WIN32 -#define FCGI_LOG_EMERG __FILE__,__LINE__,APLOG_EMERG,APR_FROM_OS_ERROR(GetLastError()) -#define FCGI_LOG_ALERT __FILE__,__LINE__,APLOG_ALERT,APR_FROM_OS_ERROR(GetLastError()) -#define FCGI_LOG_CRIT __FILE__,__LINE__,APLOG_CRIT,APR_FROM_OS_ERROR(GetLastError()) -#define FCGI_LOG_ERR __FILE__,__LINE__,APLOG_ERR,APR_FROM_OS_ERROR(GetLastError()) -#define FCGI_LOG_WARN __FILE__,__LINE__,APLOG_WARNING,APR_FROM_OS_ERROR(GetLastError()) -#define FCGI_LOG_NOTICE __FILE__,__LINE__,APLOG_NOTICE,APR_FROM_OS_ERROR(GetLastError()) -#define FCGI_LOG_INFO __FILE__,__LINE__,APLOG_INFO,APR_FROM_OS_ERROR(GetLastError()) -#define FCGI_LOG_DEBUG __FILE__,__LINE__,APLOG_DEBUG,APR_FROM_OS_ERROR(GetLastError()) +#define FCGI_LOG_EMERG APLOG_MARK,APLOG_EMERG,APR_FROM_OS_ERROR(GetLastError()) +#define FCGI_LOG_ALERT APLOG_MARK,APLOG_ALERT,APR_FROM_OS_ERROR(GetLastError()) +#define FCGI_LOG_CRIT APLOG_MARK,APLOG_CRIT,APR_FROM_OS_ERROR(GetLastError()) +#define FCGI_LOG_ERR APLOG_MARK,APLOG_ERR,APR_FROM_OS_ERROR(GetLastError()) +#define FCGI_LOG_WARN APLOG_MARK,APLOG_WARNING,APR_FROM_OS_ERROR(GetLastError()) +#define FCGI_LOG_NOTICE APLOG_MARK,APLOG_NOTICE,APR_FROM_OS_ERROR(GetLastError()) +#define FCGI_LOG_INFO APLOG_MARK,APLOG_INFO,APR_FROM_OS_ERROR(GetLastError()) +#define FCGI_LOG_DEBUG APLOG_MARK,APLOG_DEBUG,APR_FROM_OS_ERROR(GetLastError()) #else /* !WIN32 */ -#define FCGI_LOG_EMERG __FILE__,__LINE__,APLOG_EMERG,APR_FROM_OS_ERROR(errno) -#define FCGI_LOG_ALERT __FILE__,__LINE__,APLOG_ALERT,APR_FROM_OS_ERROR(errno) -#define FCGI_LOG_CRIT __FILE__,__LINE__,APLOG_CRIT,APR_FROM_OS_ERROR(errno) -#define FCGI_LOG_ERR __FILE__,__LINE__,APLOG_ERR,APR_FROM_OS_ERROR(errno) -#define FCGI_LOG_WARN __FILE__,__LINE__,APLOG_WARNING,APR_FROM_OS_ERROR(errno) -#define FCGI_LOG_NOTICE __FILE__,__LINE__,APLOG_NOTICE,APR_FROM_OS_ERROR(errno) -#define FCGI_LOG_INFO __FILE__,__LINE__,APLOG_INFO,APR_FROM_OS_ERROR(errno) -#define FCGI_LOG_DEBUG __FILE__,__LINE__,APLOG_DEBUG,APR_FROM_OS_ERROR(errno) -#endif - -#define FCGI_LOG_EMERG_ERRNO __FILE__,__LINE__,APLOG_EMERG,APR_FROM_OS_ERROR(errno) -#define FCGI_LOG_ALERT_ERRNO __FILE__,__LINE__,APLOG_ALERT,APR_FROM_OS_ERROR(errno) -#define FCGI_LOG_CRIT_ERRNO __FILE__,__LINE__,APLOG_CRIT,APR_FROM_OS_ERROR(errno) -#define FCGI_LOG_ERR_ERRNO __FILE__,__LINE__,APLOG_ERR,APR_FROM_OS_ERROR(errno) -#define FCGI_LOG_WARN_ERRNO __FILE__,__LINE__,APLOG_WARNING,APR_FROM_OS_ERROR(errno) -#define FCGI_LOG_NOTICE_ERRNO __FILE__,__LINE__,APLOG_NOTICE,APR_FROM_OS_ERROR(errno) -#define FCGI_LOG_INFO_ERRNO __FILE__,__LINE__,APLOG_INFO,APR_FROM_OS_ERROR(errno) -#define FCGI_LOG_DEBUG_ERRNO __FILE__,__LINE__,APLOG_DEBUG,APR_FROM_OS_ERROR(errno) - -#define FCGI_LOG_EMERG_NOERRNO __FILE__,__LINE__,APLOG_EMERG,0 -#define FCGI_LOG_ALERT_NOERRNO __FILE__,__LINE__,APLOG_ALERT,0 -#define FCGI_LOG_CRIT_NOERRNO __FILE__,__LINE__,APLOG_CRIT,0 -#define FCGI_LOG_ERR_NOERRNO __FILE__,__LINE__,APLOG_ERR,0 -#define FCGI_LOG_WARN_NOERRNO __FILE__,__LINE__,APLOG_WARNING,0 -#define FCGI_LOG_NOTICE_NOERRNO __FILE__,__LINE__,APLOG_NOTICE,0 -#define FCGI_LOG_INFO_NOERRNO __FILE__,__LINE__,APLOG_INFO,0 -#define FCGI_LOG_DEBUG_NOERRNO __FILE__,__LINE__,APLOG_DEBUG,0 - +#define FCGI_LOG_EMERG APLOG_MARK,APLOG_EMERG,APR_FROM_OS_ERROR(errno) +#define FCGI_LOG_ALERT APLOG_MARK,APLOG_ALERT,APR_FROM_OS_ERROR(errno) +#define FCGI_LOG_CRIT APLOG_MARK,APLOG_CRIT,APR_FROM_OS_ERROR(errno) +#define FCGI_LOG_ERR APLOG_MARK,APLOG_ERR,APR_FROM_OS_ERROR(errno) +#define FCGI_LOG_WARN APLOG_MARK,APLOG_WARNING,APR_FROM_OS_ERROR(errno) +#define FCGI_LOG_NOTICE APLOG_MARK,APLOG_NOTICE,APR_FROM_OS_ERROR(errno) +#define FCGI_LOG_INFO APLOG_MARK,APLOG_INFO,APR_FROM_OS_ERROR(errno) +#define FCGI_LOG_DEBUG APLOG_MARK,APLOG_DEBUG,APR_FROM_OS_ERROR(errno) +#endif + +#define FCGI_LOG_EMERG_ERRNO APLOG_MARK,APLOG_EMERG,APR_FROM_OS_ERROR(errno) +#define FCGI_LOG_ALERT_ERRNO APLOG_MARK,APLOG_ALERT,APR_FROM_OS_ERROR(errno) +#define FCGI_LOG_CRIT_ERRNO APLOG_MARK,APLOG_CRIT,APR_FROM_OS_ERROR(errno) +#define FCGI_LOG_ERR_ERRNO APLOG_MARK,APLOG_ERR,APR_FROM_OS_ERROR(errno) +#define FCGI_LOG_WARN_ERRNO APLOG_MARK,APLOG_WARNING,APR_FROM_OS_ERROR(errno) +#define FCGI_LOG_NOTICE_ERRNO APLOG_MARK,APLOG_NOTICE,APR_FROM_OS_ERROR(errno) +#define FCGI_LOG_INFO_ERRNO APLOG_MARK,APLOG_INFO,APR_FROM_OS_ERROR(errno) +#define FCGI_LOG_DEBUG_ERRNO APLOG_MARK,APLOG_DEBUG,APR_FROM_OS_ERROR(errno) + +#define FCGI_LOG_EMERG_NOERRNO APLOG_MARK,APLOG_EMERG,0 +#define FCGI_LOG_ALERT_NOERRNO APLOG_MARK,APLOG_ALERT,0 +#define FCGI_LOG_CRIT_NOERRNO APLOG_MARK,APLOG_CRIT,0 +#define FCGI_LOG_ERR_NOERRNO APLOG_MARK,APLOG_ERR,0 +#define FCGI_LOG_WARN_NOERRNO APLOG_MARK,APLOG_WARNING,0 +#define FCGI_LOG_NOTICE_NOERRNO APLOG_MARK,APLOG_NOTICE,0 +#define FCGI_LOG_INFO_NOERRNO APLOG_MARK,APLOG_INFO,0 +#define FCGI_LOG_DEBUG_NOERRNO APLOG_MARK,APLOG_DEBUG,0 #else /* !APACHE2 */ #ifdef WIN32 -#define FCGI_LOG_EMERG __FILE__,__LINE__,APLOG_EMERG|APLOG_WIN32ERROR -#define FCGI_LOG_ALERT __FILE__,__LINE__,APLOG_ALERT|APLOG_WIN32ERROR -#define FCGI_LOG_CRIT __FILE__,__LINE__,APLOG_CRIT|APLOG_WIN32ERROR -#define FCGI_LOG_ERR __FILE__,__LINE__,APLOG_ERR|APLOG_WIN32ERROR -#define FCGI_LOG_WARN __FILE__,__LINE__,APLOG_WARNING|APLOG_WIN32ERROR -#define FCGI_LOG_NOTICE __FILE__,__LINE__,APLOG_NOTICE|APLOG_WIN32ERROR -#define FCGI_LOG_INFO __FILE__,__LINE__,APLOG_INFO|APLOG_WIN32ERROR -#define FCGI_LOG_DEBUG __FILE__,__LINE__,APLOG_DEBUG|APLOG_WIN32ERROR +#define FCGI_LOG_EMERG APLOG_MARK,APLOG_EMERG|APLOG_WIN32ERROR +#define FCGI_LOG_ALERT APLOG_MARK,APLOG_ALERT|APLOG_WIN32ERROR +#define FCGI_LOG_CRIT APLOG_MARK,APLOG_CRIT|APLOG_WIN32ERROR +#define FCGI_LOG_ERR APLOG_MARK,APLOG_ERR|APLOG_WIN32ERROR +#define FCGI_LOG_WARN APLOG_MARK,APLOG_WARNING|APLOG_WIN32ERROR +#define FCGI_LOG_NOTICE APLOG_MARK,APLOG_NOTICE|APLOG_WIN32ERROR +#define FCGI_LOG_INFO APLOG_MARK,APLOG_INFO|APLOG_WIN32ERROR +#define FCGI_LOG_DEBUG APLOG_MARK,APLOG_DEBUG|APLOG_WIN32ERROR #else /* !WIN32 */ -#define FCGI_LOG_EMERG __FILE__,__LINE__,APLOG_EMERG -#define FCGI_LOG_ALERT __FILE__,__LINE__,APLOG_ALERT -#define FCGI_LOG_CRIT __FILE__,__LINE__,APLOG_CRIT -#define FCGI_LOG_ERR __FILE__,__LINE__,APLOG_ERR -#define FCGI_LOG_WARN __FILE__,__LINE__,APLOG_WARNING -#define FCGI_LOG_NOTICE __FILE__,__LINE__,APLOG_NOTICE -#define FCGI_LOG_INFO __FILE__,__LINE__,APLOG_INFO -#define FCGI_LOG_DEBUG __FILE__,__LINE__,APLOG_DEBUG -#endif - -#define FCGI_LOG_EMERG_ERRNO __FILE__,__LINE__,APLOG_EMERG /* system is unusable */ -#define FCGI_LOG_ALERT_ERRNO __FILE__,__LINE__,APLOG_ALERT /* action must be taken immediately */ -#define FCGI_LOG_CRIT_ERRNO __FILE__,__LINE__,APLOG_CRIT /* critical conditions */ -#define FCGI_LOG_ERR_ERRNO __FILE__,__LINE__,APLOG_ERR /* error conditions */ -#define FCGI_LOG_WARN_ERRNO __FILE__,__LINE__,APLOG_WARNING /* warning conditions */ -#define FCGI_LOG_NOTICE_ERRNO __FILE__,__LINE__,APLOG_NOTICE /* normal but significant condition */ -#define FCGI_LOG_INFO_ERRNO __FILE__,__LINE__,APLOG_INFO /* informational */ -#define FCGI_LOG_DEBUG_ERRNO __FILE__,__LINE__,APLOG_DEBUG /* debug-level messages */ - -#define FCGI_LOG_EMERG_NOERRNO __FILE__,__LINE__,APLOG_EMERG|APLOG_NOERRNO -#define FCGI_LOG_ALERT_NOERRNO __FILE__,__LINE__,APLOG_ALERT|APLOG_NOERRNO -#define FCGI_LOG_CRIT_NOERRNO __FILE__,__LINE__,APLOG_CRIT|APLOG_NOERRNO -#define FCGI_LOG_ERR_NOERRNO __FILE__,__LINE__,APLOG_ERR|APLOG_NOERRNO -#define FCGI_LOG_WARN_NOERRNO __FILE__,__LINE__,APLOG_WARNING|APLOG_NOERRNO -#define FCGI_LOG_NOTICE_NOERRNO __FILE__,__LINE__,APLOG_NOTICE|APLOG_NOERRNO -#define FCGI_LOG_INFO_NOERRNO __FILE__,__LINE__,APLOG_INFO|APLOG_NOERRNO -#define FCGI_LOG_DEBUG_NOERRNO __FILE__,__LINE__,APLOG_DEBUG|APLOG_NOERRNO - +#define FCGI_LOG_EMERG APLOG_MARK,APLOG_EMERG +#define FCGI_LOG_ALERT APLOG_MARK,APLOG_ALERT +#define FCGI_LOG_CRIT APLOG_MARK,APLOG_CRIT +#define FCGI_LOG_ERR APLOG_MARK,APLOG_ERR +#define FCGI_LOG_WARN APLOG_MARK,APLOG_WARNING +#define FCGI_LOG_NOTICE APLOG_MARK,APLOG_NOTICE +#define FCGI_LOG_INFO APLOG_MARK,APLOG_INFO +#define FCGI_LOG_DEBUG APLOG_MARK,APLOG_DEBUG +#endif + +#define FCGI_LOG_EMERG_ERRNO APLOG_MARK,APLOG_EMERG /* system is unusable */ +#define FCGI_LOG_ALERT_ERRNO APLOG_MARK,APLOG_ALERT /* action must be taken immediately */ +#define FCGI_LOG_CRIT_ERRNO APLOG_MARK,APLOG_CRIT /* critical conditions */ +#define FCGI_LOG_ERR_ERRNO APLOG_MARK,APLOG_ERR /* error conditions */ +#define FCGI_LOG_WARN_ERRNO APLOG_MARK,APLOG_WARNING /* warning conditions */ +#define FCGI_LOG_NOTICE_ERRNO APLOG_MARK,APLOG_NOTICE /* normal but significant condition */ +#define FCGI_LOG_INFO_ERRNO APLOG_MARK,APLOG_INFO /* informational */ +#define FCGI_LOG_DEBUG_ERRNO APLOG_MARK,APLOG_DEBUG /* debug-level messages */ + +#define FCGI_LOG_EMERG_NOERRNO APLOG_MARK,APLOG_EMERG|APLOG_NOERRNO +#define FCGI_LOG_ALERT_NOERRNO APLOG_MARK,APLOG_ALERT|APLOG_NOERRNO +#define FCGI_LOG_CRIT_NOERRNO APLOG_MARK,APLOG_CRIT|APLOG_NOERRNO +#define FCGI_LOG_ERR_NOERRNO APLOG_MARK,APLOG_ERR|APLOG_NOERRNO +#define FCGI_LOG_WARN_NOERRNO APLOG_MARK,APLOG_WARNING|APLOG_NOERRNO +#define FCGI_LOG_NOTICE_NOERRNO APLOG_MARK,APLOG_NOTICE|APLOG_NOERRNO +#define FCGI_LOG_INFO_NOERRNO APLOG_MARK,APLOG_INFO|APLOG_NOERRNO +#define FCGI_LOG_DEBUG_NOERRNO APLOG_MARK,APLOG_DEBUG|APLOG_NOERRNO + #endif /* !APACHE2 */ #ifdef FCGI_DEBUG
_______________________________________________ ceph-users mailing list ceph-users@lists.ceph.com http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com