If you have ever tried to upload a WordPress theme or plugin and were suddenly stopped by the message “The link you followed has expired”, you are not alone. This confusing error usually appears without much explanation, which makes it feel more serious than it really is. In most cases, WordPress is simply telling you that your server settings are too restrictive for the file you are trying to upload.

TLDR: The “The link you followed has expired” error in WordPress is usually caused by upload limits, memory limits, or execution time limits on your hosting server. You can fix it by increasing PHP values such as upload_max_filesize, post_max_size, and max_execution_time. The easiest methods are editing your hosting settings, updating your .htaccess file, changing php.ini, or asking your web host for help.

What Does This WordPress Error Mean?

The message itself is not very helpful. It sounds as if you clicked an old or broken link, but that is rarely the real problem. Most often, it appears when you are uploading a file that exceeds the limits set by your server.

For example, you might see the error when you:

  • Upload a large WordPress theme file.
  • Install a premium plugin from a ZIP file.
  • Import a demo site or large content file.
  • Submit a form in the WordPress dashboard that takes too long to process.

WordPress relies on PHP, and PHP has limits that control how large uploaded files can be and how long scripts are allowed to run. If your upload takes longer than allowed, or if your file is bigger than the permitted size, WordPress may interrupt the process and display this error.

Image not found in postmeta

Common Causes of “The Link You Followed Has Expired”

Before fixing the issue, it helps to understand what is causing it. The most common causes include:

  • Low upload file size limit: Your theme or plugin ZIP file is larger than the server allows.
  • Low post size limit: The server cannot handle the amount of data being submitted.
  • Short execution time: The upload or installation process takes too long.
  • Low PHP memory limit: WordPress does not have enough memory to complete the task.
  • Restrictive hosting configuration: Shared hosting plans often use conservative default settings.

The good news is that all of these can usually be fixed with a few simple configuration changes.

Method 1: Increase Limits from Your Hosting Control Panel

The easiest and safest solution is to use your hosting control panel. Many web hosts provide a PHP settings area where you can edit upload limits without touching code.

Look for options such as PHP Settings, MultiPHP INI Editor, Select PHP Version, or PHP Options. Once there, increase these values:

  • upload_max_filesize: Set this to 64M, 128M, or higher if needed.
  • post_max_size: Set this equal to or higher than upload_max_filesize.
  • max_execution_time: Try 120 or 300 seconds.
  • memory_limit: Use 256M or higher for larger sites.

After saving your changes, return to your WordPress dashboard and try the upload again. In many cases, this immediately fixes the problem.

Method 2: Edit the .htaccess File

If your site runs on an Apache server, you may be able to fix the error by editing your .htaccess file. This file is usually located in the root folder of your WordPress installation, the same place where you find folders like wp-content, wp-admin, and wp-includes.

You can access it using an FTP client or the file manager in your hosting account. Before making changes, download a backup copy of the file. A small mistake in .htaccess can cause your site to display a server error.

Add the following lines at the bottom of the file:

php_value upload_max_filesize 128M
php_value post_max_size 128M
php_value max_execution_time 300
php_value max_input_time 300
php_value memory_limit 256M

Save the file and refresh your WordPress admin area. If the site works normally, try uploading your theme or plugin again.

Important: Some hosts do not allow PHP values to be changed through .htaccess. If your site shows an internal server error after saving, restore your backup copy and try another method.

Image not found in postmeta

Method 3: Create or Edit a php.ini File

The php.ini file controls many PHP settings on your server. On some hosting plans, you can create your own local php.ini file inside your WordPress root directory.

Using FTP or your hosting file manager, look for an existing php.ini file. If you do not see one, create a new file named php.ini and add the following:

upload_max_filesize = 128M
post_max_size = 128M
max_execution_time = 300
max_input_time = 300
memory_limit = 256M

Save the file, then test your upload again. If nothing changes, your host may require a different file name, such as .user.ini, or may not allow local PHP configuration files.

Method 4: Update the functions.php File

Another option is to add limit increases to your theme’s functions.php file. This method can work, but it is not always ideal because the changes are tied to your active theme. If you switch themes, the settings may no longer apply.

To try it, go to Appearance > Theme File Editor, select functions.php, and add:

@ini_set( 'upload_max_size', '128M' );
@ini_set( 'post_max_size', '128M' );
@ini_set( 'max_execution_time', '300' );
@ini_set( 'memory_limit', '256M' );

Save the file and test the upload. If you are not comfortable editing theme files, use FTP or your hosting control panel instead, so you can quickly undo changes if needed.

Method 5: Upload the Theme or Plugin Manually

If you only need to install a specific theme or plugin, you can bypass the WordPress uploader completely. This is a practical workaround when server limits are difficult to change.

First, unzip the theme or plugin file on your computer. Then connect to your site using FTP or your hosting file manager.

  • For themes, upload the extracted folder to wp-content/themes.
  • For plugins, upload the extracted folder to wp-content/plugins.

After uploading, go back to your WordPress dashboard. You should be able to activate the theme from Appearance > Themes or activate the plugin from Plugins > Installed Plugins.

Image not found in postmeta
Upload the WooCommerce Quick View Pro plugin.

Method 6: Ask Your Hosting Provider

If none of the above methods work, contact your hosting provider. This is often the fastest solution, especially on managed or shared hosting where users have limited control over PHP settings.

You can send a short message like this:

Hello, I am getting the WordPress error “The link you followed has expired” when uploading a theme or plugin. Could you please increase my PHP limits to upload_max_filesize 128M, post_max_size 128M, max_execution_time 300, and memory_limit 256M?

Most hosting support teams will understand the issue immediately and either adjust the values for you or explain the correct method for your server.

How to Check Your Current Upload Limit

WordPress shows your current upload limit in the media uploader. Go to Media > Add New, and look below the upload box. You will see a line such as Maximum upload file size: 32 MB.

If your theme ZIP file is 75 MB and your limit is only 32 MB, you have found the problem. Increase the upload limit or use manual FTP upload instead.

Final Thoughts

The “The link you followed has expired” error may look mysterious, but it is usually a server limit issue rather than a WordPress bug. Start with the easiest fix: increase PHP limits through your hosting control panel. If that is not available, try editing .htaccess, php.ini, or manually uploading the file.

Once your upload size, post size, memory, and execution time are set high enough, WordPress should handle theme and plugin uploads normally. And if you are unsure which method is right for your hosting environment, your provider’s support team can usually resolve the issue in just a few minutes.

Author

Editorial Staff at WP Pluginsify is a team of WordPress experts led by Peter Nilsson.

Write A Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.