Skip to main content
Lionz IPTV Downloader uses environment variables for configuration. Copy .env.example to .env and configure the following variables:

Application Settings

APP_NAME
string
default:"Laravel"
The name of your application. This is used in emails and the user interface.
APP_ENV
string
default:"local"
The application environment. Set to production for production deployments.Options: local, production, staging
APP_KEY
string
required
Application encryption key. Generate using php artisan key:generate.
This must be set before running the application. Never share or commit this key.
APP_DEBUG
boolean
default:"true"
Enable debug mode. Set to false in production to hide detailed error messages.
Always set to false in production environments to prevent information leakage.
APP_URL
string
default:"http://localhost"
The base URL of your application. Used for generating links.Example: https://iptv.example.com
SYNC_MEDIA_MEMORY_LIMIT
string
default:"512M"
Memory limit for media synchronization operations. Increase if syncing large media libraries.Example: 1024M, 2G

Localization

APP_LOCALE
string
default:"en"
Default application locale for translations.
APP_FALLBACK_LOCALE
string
default:"en"
Fallback locale when translation is not available in the current locale.
APP_FAKER_LOCALE
string
default:"en_US"
Locale for generating fake data during development and testing.

Performance & Security

APP_MAINTENANCE_DRIVER
string
default:"file"
Driver for maintenance mode storage.Options: file, database
PHP_CLI_SERVER_WORKERS
integer
default:"4"
Number of PHP CLI server worker processes.
BCRYPT_ROUNDS
integer
default:"12"
Number of bcrypt hashing rounds for password encryption. Higher values are more secure but slower.

Logging

LOG_CHANNEL
string
default:"stack"
Default log channel for application logging.Options: stack, single, daily, slack, syslog, stderr
LOG_STACK
string
default:"single"
Log stack configuration when using the stack channel.
LOG_LEVEL
string
default:"debug"
Minimum log level to record.Options: debug, info, notice, warning, error, critical, alert, emergency
LOG_DEPRECATIONS_CHANNEL
string
default:"null"
Channel for logging deprecation warnings.

Database

DB_CONNECTION
string
default:"sqlite"
Database driver to use.Options: sqlite, mysql, pgsql, sqlsrv
DB_HOST
string
default:"127.0.0.1"
Database host. Only required for MySQL, PostgreSQL, or SQL Server.
DB_PORT
integer
default:"3306"
Database port. Only required for MySQL, PostgreSQL, or SQL Server.
DB_DATABASE
string
Database name. For SQLite, this is the path to the database file.
DB_USERNAME
string
Database username. Not required for SQLite.
DB_PASSWORD
string
Database password. Not required for SQLite.

Session & Cache

SESSION_DRIVER
string
default:"database"
Session storage driver.Options: file, cookie, database, memcached, redis, array
SESSION_LIFETIME
integer
default:"120"
Session lifetime in minutes.
SESSION_ENCRYPT
boolean
default:"false"
Encrypt session data.
SESSION_PATH
string
default:"/"
Session cookie path.
SESSION_DOMAIN
string
default:"null"
Session cookie domain.
CACHE_STORE
string
default:"database"
Default cache store.Options: file, database, memcached, redis, array
CACHE_PREFIX
string
Prefix for cache keys. Useful when sharing cache infrastructure.

Queue

QUEUE_CONNECTION
string
default:"database"
Queue driver for background job processing.Options: sync, database, redis, sqs, beanstalkd
Use database for simple setups. Use redis for better performance in production.

File Storage

FILESYSTEM_DISK
string
default:"local"
Default filesystem disk for file storage.Options: local, public, s3
BROADCAST_CONNECTION
string
default:"log"
Broadcast driver for real-time events.Options: log, pusher, redis, ably

External Services

MeiliSearch

SCOUT_DRIVER
string
default:"meilisearch"
required
Search driver. Lionz IPTV Downloader uses MeiliSearch for content search.
This should always be set to meilisearch for proper search functionality.
SCOUT_QUEUE
boolean
default:"true"
Queue search index updates for better performance.
MEILISEARCH_HOST
string
required
MeiliSearch server URL.Example: http://localhost:7700
MEILISEARCH_KEY
string
MeiliSearch master key for authentication. Required if MeiliSearch is configured with a key.

Aria2

See Aria2 Configuration for detailed aria2 settings.
ARIA2_RPC_HOST
string
default:"http://localhost"
Aria2 RPC server host URL.
ARIA2_RPC_PORT
integer
default:"6800"
Aria2 RPC server port.
ARIA2_RPC_SECRET
string
Aria2 RPC secret token for authentication. Must match rpc-secret in aria2.conf.
ARIA2_DOWNLOAD_ROOT
string
default:"storage/app/public/downloads"
Root directory for downloaded files. Must match the dir setting in aria2.conf.

Xtream Codes API

See Xtream Codes Configuration for detailed API setup.
XTREAM_CODES_API_HOST
string
required
Lionz TV Xtream Codes API host URL.Example: http://api.lionz.tv
This is required to connect to Lionz TV services.
XTREAM_CODES_API_PORT
integer
default:"80"
Xtream Codes API port.
XTREAM_CODES_API_USER
string
required
Your Lionz TV account username.
Required for API authentication.
XTREAM_CODES_API_PASS
string
required
Your Lionz TV account password.
Required for API authentication. Keep this secret.
HTTP_CLIENT_USER_AGENT
string
User agent string for HTTP requests to the Xtream Codes API.

Mail

MAIL_MAILER
string
default:"log"
Mail driver for sending emails.Options: smtp, sendmail, mailgun, ses, postmark, log
MAIL_HOST
string
default:"127.0.0.1"
SMTP server host.
MAIL_PORT
integer
default:"2525"
SMTP server port.
MAIL_USERNAME
string
SMTP authentication username.
MAIL_PASSWORD
string
SMTP authentication password.
MAIL_FROM_ADDRESS
string
default:"hello@example.com"
Default “from” email address.
MAIL_FROM_NAME
string
default:"${APP_NAME}"
Default “from” name for emails.

Redis

REDIS_CLIENT
string
default:"phpredis"
Redis client library.Options: phpredis, predis
REDIS_HOST
string
default:"127.0.0.1"
Redis server host.
REDIS_PASSWORD
string
default:"null"
Redis server password.
REDIS_PORT
integer
default:"6379"
Redis server port.

AWS

AWS_ACCESS_KEY_ID
string
AWS access key ID for S3 storage.
AWS_SECRET_ACCESS_KEY
string
AWS secret access key for S3 storage.
AWS_DEFAULT_REGION
string
default:"us-east-1"
AWS region for S3 storage.
AWS_BUCKET
string
S3 bucket name for file storage.
AWS_USE_PATH_STYLE_ENDPOINT
boolean
default:"false"
Use path-style endpoint for S3 (required for MinIO).

Development Tools

TELESCOPE_ENABLED
boolean
default:"true"
Enable Laravel Telescope debugging dashboard.
Set to false in production or if you don’t need debugging tools.
VITE_APP_NAME
string
default:"${APP_NAME}"
Application name for Vite asset compilation.

Feature Flags

Enable direct download links for media files.When enabled, users can download files directly from the storage location without going through the application.

Example Configuration

.env
APP_NAME="Lionz IPTV Downloader"
APP_ENV=production
APP_KEY=base64:your-generated-key-here
APP_DEBUG=false
APP_URL=https://iptv.example.com

DB_CONNECTION=sqlite

SCOUT_DRIVER=meilisearch
SCOUT_QUEUE=true
MEILISEARCH_HOST=http://localhost:7700
MEILISEARCH_KEY=your-master-key

ARIA2_RPC_HOST=http://localhost
ARIA2_RPC_PORT=6800
ARIA2_RPC_SECRET=your-secret-token

XTREAM_CODES_API_HOST=http://api.lionz.tv
XTREAM_CODES_API_PORT=80
XTREAM_CODES_API_USER=your-username
XTREAM_CODES_API_PASS=your-password

QUEUE_CONNECTION=database
SESSION_DRIVER=database
CACHE_STORE=database

FEATURE_DIRECT_DOWNLOAD_LINKS=true

Build docs developers (and LLMs) love