Skip to main content

Mixpost Troubleshooting Guide

Resolve key issues with Mixpost installations in Docker and PHP environments. This guide provides step-by-step troubleshooting for configuration issues, and service disruptions.

Mixpost is not functioning correctly

Docker

Navigate to your folder where you have the docker-compose.yml the file then run:

# Pull the latest version
docker compose pull

# Stop and remove the old container
docker compose down

# Start a new container
docker compose up -d

If you have access to the Mixpost Dashboard, navigate to the Admin Console, then Status, to check that all systems are operating correctly. Status page is available only with the Pro and Enterprise packages.

In a PHP Environment

If you have installed Mixpost manually or within an existing Laravel application.

1. Clear the cache

php artisan route:clear
php artisan view:clear
php artisan mixpost:clear-services-cache
php artisan mixpost:clear-settings-cache

2. Optimize

php artisan optimize

3. Terminate Horizon

php artisan horizon:terminate

4. Check Supervisor status

If you setting up Supervisor process, Horizon should be started automatically.

sudo service supervisor status

If you have access to the Mixpost Dashboard, navigate to the Admin Console, then Status, to check that all systems are operating correctly. Status page is available only with the Pro and Enterprise packages.

Configuration Changes Not Taking Effect

If you have installed Mixpost manually or within an existing Laravel application, and changes made to the .env file are not being reflected, it's likely due to caching issues. You can resolve this problem by executing the following command, which clears the cache and recompiles application settings:

php artisan optimize

Media files don't display in the browser after upload

Verify APP_URL

Ensure that your APP_URL contains only the base URL and does not include any path or a trailing slash. Example:

https://example.com

Create a symbolic link

If you have installed Mixpost manually or within an existing Laravel application, create a symbolic link from the public/storage directory to storage/app/public to ensure proper file storage access:

php artisan storage:link

Decrypting Issue

Mixpost secures your service and social account credentials using AES-256 and AES-128 encryption via OpenSSL.

Caution Against Changing APP_KEY: We advise against modifying the APP_KEY in your environment settings. Altering this key disrupts the application's ability to decrypt previously stored credentials, impacting functionalities such as:

  • Access to service credentials
  • Connection to social account credentials

As a result, you will need to re-enter your service credentials and reconnect your social accounts. Specifically for Mastodon, you must create a new server application. For detailed instructions, see the Mastodon issue troubleshooting guide.

Mastodon Connection Issue

Potential Causes and Solutions for Mastodon Server Connection Failures:

Verify APP_URL

Ensure that your APP_URL is secured (i.e., uses HTTPS).

Changed APP_KEY

If the APP_KEY has been changed, Mixpost will no longer be able to decrypt existing Mastodon app credentials. To resolve this, you need to create a new application for the Mastodon server using the following command:

php artisan mixpost:create-mastodon-app <mastodon-server-domain>

Example:

php artisan mixpost:create-mastodon-app indieweb.social

Following this, re-authenticate your Mastodon accounts on this server.

If you are running Mixpost in a Docker environment, execute the above command inside your Docker container. First, log into the container:

docker composer exec -it mixpost bash

Generating an APP_KEY

Use the following tool to create a new APP_KEY.

Modify URL prefix

By default, Mixpost have an url prefix mixpost to load its core routes. The prefix used by Mixpost to load its core routes.

Example:
https://example.com/mixpost/*

You can change it by using MIXPOST_CORE_PATH=my-prefix environment variable.

danger

If you modify this prefix, ensure you update the callback URLs in all third-party services. Alternatively, if you prefer to use the mixpost prefix solely for Redirect URIs, set the FORCE_CORE_PATH_CALLBACK_TO_NATIVE=true environment variable.