How to Change File Upload Size in Ubuntu via php.ini

Learn how to increase the file upload limit on Ubuntu by editing the php.ini file. Follow this easy guide to update post_max_size and upload_max_filesize.

On Ubuntu server, maximal file size upload limit in php scripts is set to 2Mb as default.  There may be different filesize updated later in php.ini which is not sufficient to upload large database backup in phpMyAdmin.

In order to change that, two things are important,

  • Current upload_max_filesize value
  • Current location of php.ini file

To find current upload_max_filesize value, create a file called ‘pinfo.php’ at your webserver root folder with following content:

phpinfo();

Now, open recently created file in browser via http://localhost/pinfo.php (replace localhost with the servername if necessary) and look for the line

upload_max_filesize 2M

which will show you the actual maximum file size.

To change the upload_max_filesize value, open php.ini file from the location provided in information displayed from pinfo.php file. If php.ini file location is/etc/php5/apache2/php.ini, then open a ssh connection to your server and edit the file /etc/php5/apache2/php.ini as follows

sudo nano /etc/php5/apache2/php.ini

search for “upload_max_filesize” with Ctrl-W and change “2M” to “20M”. Save the file with Ctrl-O and exit with Ctrl-X. Restart the apache server with

sudo /etc/init.d/apache2 restart

and visit again http://localhost/info.php to check if the maximum file size was changed.

There is another way to change upload_max_filesize value for specific project or website only.

If you enabled mod_rewrite you can also put this to your .htaccess file:

php_value upload_max_filesize = 16G
php_value post_max_size = 16G

So, upload_max_filesize value in php.ini file can be changed using .htaccess for project specific and from php.ini file itself for whole server specific.

How to Display Facebook Albums and Photos on Your Website

Easily embed Facebook photo albums and images on your website using Graph API or plugins. Step-by-step guide to showcase Facebook content seamlessly.

Facebook Album Browser is a Reponsive jQuery plugin for browsing public albums and photos from any Facebook account and showcases them as a photo gallery on your website. Albums are displayed with respective cover photos. Click on the cover photo to display all the photos under the album. Click on any photo opens the lightbox with next/prev buttons to navigate.

The main purpose of this plugin is to embed and customize Facebook photo albums in your website without being limited with Facebook styling. It also allows you to use it as picker as it raises events for clicked album/photo.

Plugin is compatible for both desktop and mobile websites.

How to Use:

  1. Load Facebook Album Browser plugin right after the jQuery library as shown below.
    <link rel="stylesheet" href="src/jquery.fb.albumbrowser.css">
    <script src="//code.jquery.com/jquery-1.11.1.min.js"></script>
    <script src="src/jquery.fb.albumbrowser.js"></script>

  2.  Create a container element in body of the page to display the Facebook Album Browser.
    <div class="fb-album-browser"></div>

  3. Call Facebook Album Browser in above container element and provide Facebook account to display albums as below.
    $(document).ready(function () {
    $(".fb-album-browser").FacebookAlbumBrowser({
    account: "starsportsindia"
    });
    });

  4. Use other options listed below to customize Facebook Album Browser plugin.
    // Facebook account
    account: "",

    // Facebook access token
    accessToken: "",

    // Display account information
    showAccountInfo: true,

    // Display the number of images
    showImageCount: true,

    // Skip albums which have no images
    skipEmptyAlbums: true,

    // An array of albums to be skipped
    skipAlbums: [],

    // switching on/off lightbox
    lightbox: true,

    // Allows using of plugin as an image multipicker.
    photosCheckbox: true,

    // An array of photos to be checked
    checkedPhotos: [],

  5. Use events listed below to perform specific actions on specific user action.
    // when album is selected in the browser.
    albumSelected: null,

    // when photo is selecetd in the browser.
    photoSelected: null,

    // when photo is selecetd in the browser.
    photoChecked: null,

    // when photo is checked.
    photoUnchecked: null,

  6. Every event function returns an object with following properties:
    id: image id in Facebook database
    url: large image url
    thumb: thumbnail image url
     

Download: https://github.com/dejanstojanovic/Facebook-Album-Browser

How to Get Response Headers Using file_get_contents in PHP

Learn how to retrieve HTTP response headers using file_get_contents() in PHP. A simple and lightweight alternative to cURL for inspecting headers.

When working with APIs or external resources in PHP, sometimes you need to inspect the HTTP response headers — not just the content. While cURL is commonly used for this, you can also retrieve headers using the built-in file_get_contents() function with the right stream context.

In this post, we learn the effective way to get response headers, while using PHP file_get_contents() function.

Using $http_response_header PHP variable to Get Response Headers

We use file_get_contents() to fetch the content from a URL. But with some configuration, you can also access the response headers.

Here’s how you can do it:

<?php
$url = "https://example.com";

// Create a stream context
$options = [
    "http" => [
        "method" => "GET",
        "header" => "User-Agent: PHP\r\n"
    ]
];
$context = stream_context_create($options);

// Fetch the content
$response = file_get_contents($url, false, $context);

// Display the content
echo $response;

// Get the response headers
print_r($http_response_header);
?>

Explanation

  • We used stream_context_create() to define HTTP request options, like headers or methods.
  • The $http_response_header is a special PHP variable automatically populated when using file_get_contents() with an HTTP context.
  • It contains the raw headers returned by the server as an indexed array.

Example Output

When you run the above script, $http_response_header might contain something like:

Array
(
    [0] => HTTP/1.1 200 OK
    [1] => Content-Type: text/html; charset=UTF-8
    [2] => Date: Wed, 25 Jun 2025 10:30:00 GMT
    ...
)

Checking Specific Headers

You can loop through the headers to extract specific values:

foreach ($http_response_header as $header) {
    if (stripos($header, "Content-Type:") !== false) {
        echo "Content-Type Header: $header";
    }
}

Use Cases

We can use this method for various purpose as follows:

  • Verifying HTTP status codes
  • Checking content type or caching headers
  • Basic debugging of server responses without using cURL

Conclusion

While file_get_contents() is often seen as a simple way to read data from URLs, it’s surprisingly powerful when paired with stream contexts. For lightweight HTTP requests where you don’t need advanced control, it’s a quick alternative to cURL — and retrieving headers is straightforward using $http_response_header.

Different YouTube Video Thumbnail URLs You Can Use

Discover the various YouTube video thumbnail URL formats—from default to high resolution. Learn how to fetch and use them in your apps or websites.

To get the different thumbnails of embedded video from YouTube, use these image URLs for different dimensions,

1) For medium sized thumbnail image
http://i.ytimg.com/vi/<YouTube Video ID>/0.jpg

2)  For small sized thumbnail image

http://i.ytimg.com/vi/<YouTube Video ID>/1.jpg
http://i.ytimg.com/vi/<YouTube Video ID>/2.jpg
http://i.ytimg.com/vi/<YouTube Video ID>/3.jpg

3) For large or maximum sized thumbnail image

http://i.ytimg.com/vi/<YouTube Video ID>/maxresdefault.jpg

4) For High Definition Image

http://img.youtube.com/vi/<YouTube Video ID>/hqdefault.jpg

In above URLs, provide <YouTube Video ID>. To get Video ID from YouTube URL,

  • Go to http://www.youtube.com
  • Play any video
  • Copy an alphanumeric string followed by v= from URL

This is a Video ID of currently playing video.

For example:

Video ID of YouTube Video https://www.youtube.com/watch?v=ny8ngucMd_U is ny8ngucMd_U

Use this video ID in above thumbnail URLs to get different thumbnail image of this video.

How to Find YouTube Video ID from Any YouTube URL

Learn how to extract the YouTube video ID from different types of YouTube URLs using simple methods and regex examples. Ideal for developers and marketers.

YouTube has so many types of URLs to embed the video on your site. Sometimes it’s difficult to find a single regular expression to parse all type of YouTube URL and retrieve the video ID from it.

To retrieve the video ID from the YouTube URL, use this function,

function getVideoID($url) {
    $pattern = '#^(?:https?://)?(?:www\.)?(?:youtu\.be/|youtube\.com(?:/embed/|/v/|/watch\?v=|/watch\?.+&v=))([\w-]{11})(?:.+)?$#x';
    preg_match($pattern, $url, $matches);
    return (isset($matches[1])) ? $matches[1] : false;
}

Regular Expression explanation is as follows,

$pattern = '#^(?:https?://)?';    # Either http or https.
$pattern .= '(?:www\.)?';         #  Optional, www subdomain.
$pattern .= '(?:';                #  Group host alternatives:
$pattern .=   'youtu\.be/';       #    Either youtu.be,
$pattern .=   '|youtube\.com';    #    or youtube.com
$pattern .=   '(?:';              #    Group path alternatives:
$pattern .=     '/embed/';        #      Either /embed/,
$pattern .=     '|/v/';           #      or /v/,
$pattern .=     '|/watch\?v=';    #      or /watch?v=,    
$pattern .=     '|/watch\?.+&v='; #      or /watch?other_param&v=
$pattern .=   ')';                #    End path alternatives.
$pattern .= ')';                  #  End host alternatives.
$pattern .= '([\w-]{11})';        # Youtube video ids with standard length of 11 chars.
$pattern .= '(?:.+)?$#x';         # Optional other ending URL parameters.