Post

PHP Internship

PHP Backend Internship

During my internship, I had the opportunity to work on various tasks and features that contributed to the functionality and performance of a custom-built control panel used by the company. I worked on a Linux test server, where I implemented some features using bash scripting and others with PHP. The control panel itself was written in PHP and CodeIgniter, and my role involved expanding its capabilities and optimizing its performance. Below, I’ve outlined some of the key projects I worked on, along with descriptions of the associated screenshots. Unfortunately, some screenshots are lost due to time constraints or privacy concerns, but I’ll provide as much detail as possible.

Projects & Features

1. Slack Chat Bot

Developed a bot to report important updates and notifications to admins and staff directly via Slack.

2. CWP Module Implementation

Expanded the existing control panel by adding new features and modules based on client and team requests.

3. Client Quotas & Charts

Created tools to manage and visualize client quotas, including disk usage, bandwidth, and mail quotas.

4. SSL Expiry Notifications

Built a system to alert admins when SSL certificates are nearing expiration.

5. DNS Serial Checker

Developed a tool to verify DNS serial numbers and report discrepancies for troubleshooting.

6. Notifications Panel

Implemented a panel for admins to manage and resolve notifications within the control panel.

7. Disk Usage Monitoring

Added features to track server disk usage, helping in resource management and customer allocation.

8. SSL Certificate Errors Page

Created a page to display SSL certificate errors for easy identification and resolution.

9. Miscellaneous Enhancements

Worked on various minor features and improvements. More details may be added as I recall them.

Screenshot Descriptions

Here are some screenshots that illustrate the features I worked on. Unfortunately, due to time constraints and privacy concerns, some images may not be available.

  • Image 1:
    • This screenshot shows the output of a PHP script that reports the CWP user, server IP, date, total disk usage, allowed quota, home folder, MySQL folder, and mail storage usage. View Image
  • Image 2:
    • A search tool for filtering CPU usage across datacenters or locations, with options to filter based on server type (VPS or dedicated) and time period. It returns the average CPU usage for the selected parameters. View Image
  • Image 3:
    • A live CPU chart for a single server, updated via AJAX and SQL. This chart provides real-time monitoring of CPU usage. View Image
  • Image 4:
    • DNS overview page that allows searching for domain extensions, IP addresses, and servers. Clicking the “View DNS” button shows detailed DNS settings. View Image
  • Image 5:
    • Detailed view of DNS settings with a date dropdown to filter changes. This page helps identify and resolve DNS issues. View Image
  • Image 6:
    • Dashboard showing CPU load, service statuses (e.g., Postfix, Apache, MySQL), and the mail queue. Services are indicated with green (running) or red (not running) circles.

    View Image

  • Image 7:
    • Mail queue page for managing emails that are stuck or dropped. View Image
  • Load GIF:
    • A GIF showing a plotted chart of live CPU usage, updated from AJAX endpoints. View Image

If I recall any additional features or updates, I’ll be sure to add them here. I hope you find this overview insightful and helpful in understanding the work I accomplished during my internship.

This post is licensed under CC BY 4.0 by the author.