Files
filegator/configuration/storage.html
2019-06-19 09:37:07 +02:00

211 lines
9.8 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>FileGator - Documentation</title>
<link rel="stylesheet" href="https://docs.filegator.io/css/bootstrap.min.css">
<link rel="stylesheet" href="https://docs.filegator.io/css/font-awesome.min.css">
<link rel="stylesheet" href="https://docs.filegator.io/css/highlight.tomorrow-night.css">
<link rel="stylesheet" href="https://docs.filegator.io/css/main.css">
</head>
<body>
<header class="navbar navbar-default navbar-fixed-top">
<a class="navbar-brand" href="https://docs.filegator.io/">
FileGator
<small class="hidden-xs hidden-sm">
Documentation
</small>
</a>
</header>
<main class="container-fluid">
<div class="row">
<nav id="sidebar" class="col-sm-3 col-lg-2" role="navigation">
<p class="text-muted">
Getting Started
</p>
<ul class="nav nav-pills nav-stacked">
<li class="">
<a href="https://docs.filegator.io/index.html">
What is FileGator
</a>
</li>
<li class="">
<a href="https://docs.filegator.io/install.html">
Installation
</a>
</li>
<li class="">
<a href="https://docs.filegator.io/development.html">
Development
</a>
</li>
<li class="">
<a href="https://docs.filegator.io/demo.html">
Demo
</a>
</li>
</ul>
<p class="text-muted">
Configuration
</p>
<ul class="nav nav-pills nav-stacked">
<li class="">
<a href="https://docs.filegator.io/configuration/basic.html">
Basic
</a>
</li>
<li class="">
<a href="https://docs.filegator.io/configuration/auth.html">
Auth
</a>
</li>
<li class="">
<a href="https://docs.filegator.io/configuration/session.html">
Session
</a>
</li>
<li class="">
<a href="https://docs.filegator.io/configuration/storage.html">
Storage
</a>
</li>
<li class="">
<a href="https://docs.filegator.io/configuration/logging.html">
Logging
</a>
</li>
<li class="">
<a href="https://docs.filegator.io/configuration/security.html">
Security
</a>
</li>
</ul>
</nav>
<section class="col-sm-offset-3 col-lg-offset-2 col-sm-9 col-lg-10">
<h2 id="adapters">Adapters</h2>
<p>Different storage adapters are provided through the awesome <a href="https://github.com/thephpleague/flysystem">Flysystem</a> library.</p>
<p>You can use local filesystem (default), FTP, S3, Dropbox and many others.</p>
<p>Please check the Flysystem <a href="https://github.com/thephpleague/flysystem">docs</a> for the exact setup required for each adapter.</p>
<h2 id="default-local-disk-adapter">Default Local Disk Adapter</h2>
<p>With default adapter you just need to configure where your <code>repository</code> folder is. This folder will serve as a root for everything else.</p>
<pre><code> 'Filegator\Services\Storage\Filesystem' =&gt; [
'handler' =&gt; '\Filegator\Services\Storage\Filesystem',
'config' =&gt; [
'separator' =&gt; '/',
'config' =&gt; [],
'adapter' =&gt; function () {
return new \League\Flysystem\Adapter\Local(
__DIR__.'/repository'
);
},
],
],
</code></pre>
<h2 id="ftp-adapter">FTP Adapter</h2>
<p>See official <a href="https://flysystem.thephpleague.com/docs/adapter/ftp/">documentation</a></p>
<pre><code> 'Filegator\Services\Storage\Filesystem' =&gt; [
'handler' =&gt; '\Filegator\Services\Storage\Filesystem',
'config' =&gt; [
'separator' =&gt; '/',
'config' =&gt; [],
'adapter' =&gt; function () {
return new \League\Flysystem\Adapter\Ftp([
'host' =&gt; 'example.com',
'username' =&gt; 'demo',
'password' =&gt; 'password',
'port' =&gt; 21,
'timeout' =&gt; 10,
]);
},
],
],
</code></pre>
<h2 id="sftp-adapter">SFTP Adapter</h2>
<p>You must require additional library <code>composer require league/flysystem-sftp</code>.</p>
<p>See official <a href="https://flysystem.thephpleague.com/docs/adapter/sftp/">documentation</a>.</p>
<pre><code> 'Filegator\Services\Storage\Filesystem' =&gt; [
'handler' =&gt; '\Filegator\Services\Storage\Filesystem',
'config' =&gt; [
'separator' =&gt; '/',
'config' =&gt; [],
'adapter' =&gt; function () {
return new \League\Flysystem\Sftp\SftpAdapter([
'host' =&gt; 'example.com',
'port' =&gt; 22,
'username' =&gt; 'demo',
'password' =&gt; 'password',
'timeout' =&gt; 10,
]);
},
],
],
</code></pre>
<h2 id="dropbox-adapter">Dropbox Adapter</h2>
<p>You must require additional library <code>composer require spatie/flysystem-dropbox</code>.</p>
<p>See official <a href="https://flysystem.thephpleague.com/docs/adapter/dropbox/">documentation</a></p>
<pre><code> 'Filegator\Services\Storage\Filesystem' =&gt; [
'handler' =&gt; '\Filegator\Services\Storage\Filesystem',
'config' =&gt; [
'separator' =&gt; '/',
'config' =&gt; [
'case_sensitive' =&gt; false,
],
'adapter' =&gt; function () {
$authorizationToken = '1234';
$client = new \Spatie\Dropbox\Client($authorizationToken);
return new \Spatie\FlysystemDropbox\DropboxAdapter($client);
},
],
],
</code></pre>
</section>
</div>
</main>
<script src="//code.jquery.com/jquery-1.11.0.min.js"></script>
<script src="//netdna.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js"></script>
<script src="//yandex.st/highlightjs/7.5/highlight.min.js"></script>
<script>
$(function() {
$("section>h1").wrap('<div class="page-header" />');
// Syntax highlighting
hljs.initHighlightingOnLoad();
});
</script>
<!-- Ticksel analytics v1.0 -->
<script type="text/javascript">
var _tcfg = _tcfg || [];
(function() {
_tcfg.push(["tags", "filegator-io,filegator-io-docs"]);
var u="https://cdn.ticksel.com/js/analytics_v1.0.js"; _tcfg.push(["account_id", 8348834]);
var d=document, g=d.createElement("script"), s=d.getElementsByTagName("script")[0];
g.type="text/javascript"; g.async=true; g.src=u; g.setAttribute("crossorigin", "anonymous");
g.setAttribute("integrity", "sha256-7grd8jMivCG0iCcJ7m/Ny4gvWb0mPVpFhRQovLkaUl8=");
s.parentNode.insertBefore(g,s);
})();
</script>
<noscript><img src="https://beacon.ticksel.com/beam?account_id=8348834&referrer=&tags=filegator-io,filegator-io-docs" style="border:0;" width="0" height="0" alt="" /></noscript>
<!-- End Ticksel Code -->
</body>
</html>