原稿の保存にowncloud(アプリで同期)を使用しているのですが、手持ちのレンタルサーバー(ヘテムル)に設置する際に、ソースの変更が必要なので、自分用にメモ。
※修正しないと、ブラウザでは見れるのに、クライアントアプリでログインできない(403でwebdav接続ができない)現象が発生する。
※ロリポ、ヘテムル(php7.x CGI版、モジュール版)で確認。
ownCloud Server(tar.bz2)をダウンロード
https://owncloud.org/download/
今日の最新は、owncloud-10.2.0.tar.bz2
解凍
.htaccessのRewriteEngine on の下に追加
RewriteCond %{HTTP:Authorization} . RewriteRule ^(.*) $1?Authorization=%{HTTP:Authorization} [QSA,C] RequestHeader unset Authorization
.htaccessの最後に追加
<IfModule mod_siteguard.c> SiteGuard_User_ExcludeSig method-chk-3 </IfModule>
/lib/base.php の protected static function handleAuthHeaders() { の下に追加
if(isset($_GET['Authorization']) && preg_match('/Basic\s+(.*)$/i', $_GET['Authorization'], $matches)){ list($name, $password) = explode(':', base64_decode($matches[1])); $_SERVER['PHP_AUTH_USER'] = strip_tags($name); $_SERVER['PHP_AUTH_PW'] = strip_tags($password); }
FTPでアップ
レンタルサーバーのコンパネでWAFをOFFにする
ブラウザでアクセス(SSL必須?共有SSLでもOK)
例 https://******/owncloud/
あとは通常通り