Web Applications
You can significantly increase your website functionality by using different web apps. Apps installed on a website can perform a number of tasks. If you are an individual, you can, for example, present yourself with a blog or organize an online storage of your media files. Companies can move their business online using the e-commerce or CRM web apps. All these apps are available for installation from the Applications section of the Customer Panel.
The list of available apps is governed by your hosting plan. For example, it might include only free apps or no apps at all. For more information on available apps, contact your hosting provider.
App Types
There are two types of web apps:
- Apps installed directly on your website (for example, the WordPress blogging platform or the Joomla! content management system).
- Apps installed on external servers and provided by third-parties.
Regardless of the installation type, apps can be either free or commercial. Commercial apps require you to obtain a license key to start working with them.
App Installation and Maintenance
The process of installation is fully automated and does not require any specific skills. To learn how to install web apps from the Customer Panel, refer to the section Installing Apps.
Further app management is also facilitated as you can update or remove apps directly in Plesk. Moreover, you can access some functions that apps reveal to the Customer Panel (without the need to log in to an app). For example, you can add SugarCRM user account right from your Customer Panel. Such app functionality is a service provided by the app.
After you install an app, grant other additional user accounts access to it if you want them to be able to use the app. To get started with managing apps, see the section Managing Apps.
App Databases
If an app requires a database, Plesk creates it automatically during installation of the app. To create a database, Plesk uses app database settings, which you can change in the Main configuration section (Show All Settings link) when installing an app:
- A database name and a database server where the app will store the database.
- Database user credentials, which Plesk will use to access the app database. It may be convenient to employ a single database user with access to all databases. In this case, you can create a universal user account and specify it when installing apps. To learn more, refer to the section Managing Database User Accounts.
Note that if you exceed the maximum number of databases allowed for your subscription, a new app does not create a database. Instead, it adds tables to one of the existing databases, and adds prefixes to table names. Prefixes make it easier to distinguish tables of different apps from each other. For example, the WordPress app will add the “ wpress_ ” prefix to the names of its tables.
Access to Apps
By default, after you install an app, it is available only for users with the Owner role. You can make your apps available to certain additional users by adjusting their permissions. For details on setting up access to apps for additional users, refer to the section Granting Additional Users Access to Apps.
Apps and Additional User Accounts
Some apps let you create and manage user accounts directly in Plesk. For example, the SugarCRM app allows you to add SugarCRM users without logging in to the app. All apps with such “account services” can associate their accounts with users of a Plesk subscription (additional users). To perform such an association, you should grant the additional users access to that account service (in the same way as you grant access to apps). For details on account association, refer to the section Linking Apps and Additional User Accounts.
Installing Apps
Depending on your needs and expertise level, you can choose one of the following ways to install an app:
-
Quick. This is the easiest way to install an app. If you choose this way, Plesk will perform a typical installation of the latest app version of the selected app, Plesk will use the default values for the app settings. For example, your Plesk access credentials will be used as the app administrator’s credentials. Some apps require you to fill in certain settings even if you select the quick installation.
-
Custom. This way allows you to customize app installation settings such as administrator credentials and location, installation path, and other. Particularly, you should use custom installation if you want to switch off automatic upgrades of the app.
Note: Many applications are unable to function if the safe_mode PHP directive is in effect. To check if safe_mode is switched on for your account, go to Websites & Domains, click PHP settings, and search for safe_mode in the Common settings section. If safe_mode is on, switch it off. If you are unable to make changes to the PHP settings, contact your provider.
To install an app:
-
Go to Applications and find the app you need.
-
Click either the Install button for the quick installation or the Install (Custom) for the custom installation.
-
(Optional) Turn off automatic upgrades of the app.
If you do not want the app to be updated automatically, deselect the option Automatically update this app when updates are available on the installation settings page.
-
(Optional) Select the app version.
Sometimes, you may need to install a specific version of an app. For example, if you plan to use app extensions that are incompatible with the latest app version. In this case, click the app name > Install version to select the version you need. Then install the app.
Managing Apps
Generally, all apps allow the configuration of their main parameters directly in the Customer Panel. You can access app settings by selecting the app from the list in Applications > Manage My Applications. After you select an app, you can configure the following:
- General settings. These are basic settings (for example, the app administrator password) that can be changed with Change Settings.
- Service settings. If an app provides a part of its functionality to Plesk by means of services, you have the option to configure them. For example, the SugarCRM app allows the creation of user accounts and provides this ability as a service in the Customer Panel. After you select this service in Provided services, you can view all app user accounts and create new ones. For some apps, you can associate the app accounts with additional user accounts. Learn more about account association in the section Linking App and Additional User Accounts.
Note: If WP Toolkit is installed on the server, users are advised to use it for centralized management of WordPress installations on the server. Learn more in the section WP Toolkit.
Granting Additional Users Access to Apps
By default, after you install an app, only users with the Owner role can access it. To allow other subscription users to access the app:
-
Grant permission to access the app to a certain user group in Users > User Roles.
-
Be sure to add users of your choice to the group.
Once you allow users to access the app, a link to the app appears on their Websites & Domains page under the name of the corresponding website. Note that you can control app access only for user groups, so you should either modify the permissions of an existing group or create a new one, and then assign users to it.
By default, the app administrator is a subscription user with the Owner role. As well as accessing the apps from the Websites & Domains page, this user can also install and manage apps within a subscription. For these purposes, their interface has the additional Applications page. You can provide the same administrative privileges to other subscription users by granting the Install and manage applications permission to their role in Users > User Roles. This gives users full administrative access to all apps within a subscription. As well as the administrator, the users with this permission can install, configure, update, and remove apps through the Applications section in their Customer Panel.
Linking Apps and Additional User Accounts
Some apps let you create and manage user accounts without logging in to the app. If an app provides such an account service, you can link users of a Plesk subscription with accounts in the app. To perform such an association:
- Organize the users into a certain group (Users > User Roles).
- Grant one of these group permissions:
- Public access. If granted, all users in the group will have access to the app through the link on the Websites & Domains page.
- Personal access. If granted, the app will automatically create accounts for all users in the group. After that, the users’ Websites & Domains page will contain an additional link that allows logging in to a personal account in the app. Note that if you deny the Personal access permission, the app will automatically remove all accounts associated with this group.
Updating Apps
Automatic Updates
By default, Plesk installs the latest available app versions and updates apps immediately once the newer versions are available. However, updating an app can significantly change its functionality: For example, plug-ins or extensions developed for a particular app version may be incompatible with newer versions. Therefore, you might want to turn off automatic updates for a certain app.
To turn automatic updates on or off:
- Go to Applications > Manage My Applications and click the app’s name.
- Click Change Settings.
- Select or deselect the Automatically update this app when updates are available option .
Manual Updates
If you prohibit automatic updates for an app, Plesk will inform you about the availability of newer versions by adding the link Update available under the app name in Applications > Manage My Applications. Click this link to review the changes available in the new version and decide whether to update the app or continue with the current version.
Managing PHP Project Dependencies with Composer
Composer is a tool that helps find, install, and update library packages that your PHP project depends on. Libraries are installed in the project’s root directory. The Composer utility is available as part of Plesk. You do not need to install Composer in your project manually. Plesk installs the updates for Composer once a week.
Composer uses two files for storing the list of modules necessary for the project:
-
composer.json
- lists libraries on which your project depends directly.Add file
composer.json
to the root directory of your project and specify packages. You can use the ‘composer init'
command to createcomposer.json
. -
composer.lock
- lists all libraries on which the libraries incomposer.json
depend directly and indirectly, thus containing all libraries necessary for your project.
For more information, refer to the Composer documentation at https://getcomposer.org/doc/.
Plesk offers two ways to use Composer:
-
Through the command line. Refer to the Composer documentation for instructions.
Note: Use normal environment (not chrooted).
-
Through Websites & Domains > Applications. See the instructions below.
Using the UI for Managing PHP Project Dependencies with Composer
To find all applications that have composer.json,
so that you can
manage dependencies, click Scan in Websites & Domains >
Applications. The applications will appear in the list in the
Applications section. The commands described below are available
only for applications with the composer.json
file.
Installing Dependencies
To install all modules necessary for your project, in Websites & Domains > Applications > Manage My Applications > click the application name in the list > Install Dependencies.
Updating Dependencies
To update module dependencies, run Websites & Domains > Applications > Manage My Applications > click the application name > Update Dependencies.
Editing Dependencies
The Edit Configuration button opens composer.json
in Plesk’s
Code Editor for manual editing.
Removing Dependencies Management from Your App
When you click Remove, the application no longer appears in the list
of applications in My Apps. However, the composer.json
and
composer.lock
files remain in the application directory, so you can
add the application to the list by clicking Scan.