সার্ভারে যা লাগবে
এই অধ্যায়টি এখনও অনুবাদ হয়নি, তাই ইংরেজিতে দেখানো হচ্ছে।
এই পাতায়
What the server needs before the first video goes up. An ordinary cPanel, Plesk or DirectAdmin hosting plan is enough to start; a VPS gives video conversion more room to breathe.
The server
- PHP 7.4 or newer. 8.1 or newer is recommended, and Admin → System status marks anything older with Look.
- MySQL 5.7+ or MariaDB 10.3+, with one database and a user that has all privileges on it. Every table AIO Video makes starts with
aio_(InnoDB, utf8mb4), so it can share a database with another script without touching its tables. - Apache or LiteSpeed reading the
.htaccessthat comes in the package (mod_rewrite gives the clean addresses such as/loginand/watch/...), or nginx with the line below. - HTTPS is strongly recommended. Browsers hand the camera and microphone only to a secure page (going live from the browser needs it), and payment providers expect it.
- No Composer, no Node.js, no build step. Everything is done in the browser.
nginx reads no .htaccess. The site's own screens give this line for its server block:
location / {
try_files $uri $uri/ $uri.php?$args /link.php?$args;
}
When the server cannot rewrite addresses at all, switch off Clean addresses on Admin → Settings → General. The Check now button beside it tells you whether they work. The admin panel keeps its .php links either way, so you can always get back in.
PHP extensions
| Extension | Needed for | Status |
|---|---|---|
| pdo_mysql | the database | required |
| json, session | settings, forms, signing in | required |
| curl | the licence check, imports, payments, anything fetched from another site | required (the installer will not go on without it) |
| mbstring | Bengali, Arabic and every other alphabet in titles | required |
| fileinfo | knowing what an uploaded file really is | required |
| gd | thumbnails and pictures | recommended |
| openssl | secure e-mail and https requests | recommended |
| zip | installing a theme from a ZIP | recommended |
| dom, exif, intl | cleaning the HTML members write, turning photos the right way up, other languages | recommended |
| ftp | only when the videos are kept on a separate file server | optional |
On cPanel you switch extensions on under Select PHP Version → Extensions.
PHP settings
| Setting | Wanted |
|---|---|
upload_max_filesize | 64M or more |
post_max_size | the same as upload_max_filesize or larger |
memory_limit | 128M or more |
max_execution_time | 120 seconds or more (0 means no limit) |
proc_open() | allowed - FFmpeg conversion needs it; everything else works without |
Change them in cPanel's MultiPHP INI Editor, or ask your host.
Folders that must be writable
uploads/, cache/, themes/, plugins/ and languages/, and the site folder itself while the installer writes config.php. Permissions 755 for folders and 644 for files are right on almost every host. Once the site is installed, config.php should no longer be writable by the web server: it holds the database password.
FFmpeg (optional)
FFmpeg and FFprobe turn every upload into the other sizes you choose (720p, 480p and 360p to begin with), take its thumbnail and make the small pictures on the seek bar. Without them a video plays exactly as it was uploaded, in that one size.
Enter their paths on Admin → Media & FFmpeg (Path to ffmpeg, Path to ffprobe), or leave them empty when the programs are already on the server's PATH. PHP must be allowed to start programs. On shared hosting keep Processor cores at 1 or 2. Everything about converting is in Video conversion.
Disk space
Video fills a disk quickly. Every size that is made is another file next to the original, so plan for more than the uploads themselves.
- Keep the original file (on Admin → Media & FFmpeg) switched off saves a lot of room, but the original quality is then gone for good.
- Keep free on the disk (MB) (300 by default) makes conversion wait rather than use the last of the disk, because a full disk stops the database too.
- Admin → System status shows the free space, and the bell in the admin panel warns when the disk is nearly full.
- On shared hosting the account's quota may be smaller than the disk: cPanel shows it under Disk Usage.
- When this server is too small, keep the media on a separate file server: Admin → Media & FFmpeg → Use a file server.
Upload limits
- Largest upload (MB) on Admin → Settings → Content sets the biggest file a member may upload (512 MB after installation). A membership package can give its members a different Largest upload (MB); 0 keeps the site-wide limit.
- A file goes up in pieces, so it can be far larger than PHP's
upload_max_filesizeandpost_max_size. Each piece must fit inside them: Size of one piece (MB) is cut down to the server's limits by itself, and Pieces sent at once (3 is a good number) keeps the line full. - Behind Cloudflare, the free and Pro plans refuse a single request over 100 MB; the pieces stay well under that.
Checking a server
The installer checks the essentials on its first screen. After installation, Admin → System status (the page System requirements & status) lists every item above with Good, Look or Fix beside it, plus facts about the server, PHP, the database and the disk. It is the page to show your host when you ask them to switch something on.
One more thing every site should have is a cron line that runs every minute: see Scheduled jobs.