Link Exchange Script Documentation – Installation & Configuration Guide

Complete documentation for installing, configuring, and managing your self-hosted PHP link exchange script with automatic reciprocal link verification, cron-based monitoring, and spam detection.

Quick Start

New to Link Exchange Scripts? This quick start guide will help you get your automated reciprocal link exchange platform up and running in under 10 minutes.

What is the Link Exchange Script?

This self-hosted PHP link exchange script allows you to:

  • Automate Reciprocal Link Management – Accept link submissions and verify reciprocal backlinks automatically
  • Detect Broken & Fake Links – Identify cloaking, nofollow tags, JavaScript redirects, and HTTP errors
  • Schedule Cron-Based Monitoring – Continuously verify all active reciprocal links with automated cron jobs
  • Filter Spam Submissions – 9 auto-rejection rules, quality scoring, and CAPTCHA protection
  • Manage Link Directory – Hierarchical categories, nested structure, featured links, and SEO optimization
  • Track Performance – 6 comprehensive reports with charts, analytics, and export capabilities

5-Minute Setup Overview

1

Upload Files

Extract and upload all script files to your web server via FTP or File Manager

2

Create Database

Create a MySQL database and note down database name, username, and password

3

Run Installer

Visit yourdomain.com/install.php and complete the installation wizard

4

Configure Settings

Login to admin panel, configure site settings, email, and verification options

5

Setup Cron Job

Configure automated link verification with cron job for continuous monitoring

That's it! Your automated link exchange platform is ready to accept submissions and verify reciprocal backlinks.

Server Requirements

Before installing the PHP link exchange script, ensure your web hosting meets these minimum requirements:

Minimum Requirements

Component Minimum Version Recommended
PHP 8.0 8.1 or higher
MySQL 5.7 8.0 or higher
MariaDB (alternative) 10.2 10.5 or higher
Web Server Apache 2.4 / Nginx 1.18 Apache 2.4+ with mod_rewrite
Disk Space 50 MB 100 MB+ for logs

Required PHP Extensions

The following PHP extensions must be enabled on your server:

  • PDO – Database connectivity (required)
  • PDO_MySQL – MySQL database driver (required)
  • cURL – For HTTP requests and link verification (required)
  • JSON – JSON data processing (required)
  • mbstring – Multi-byte string support (required)
  • GD Library – Image manipulation for CAPTCHA (required)
  • OpenSSL – Secure HTTPS connections (recommended)

File Permissions

The following directories require write permissions (755 or 777 depending on server configuration):

  • public/uploads/ – For file uploads
  • logs/ – For error and activity logs
  • config/ – During installation only

Cron Job Access

For automated reciprocal link verification, you need:

  • Cron Job Access – Ability to schedule automated tasks
  • Command Line Access – To run PHP scripts via cron
Shared Hosting Users: Most shared hosting providers (cPanel, Plesk) offer cron job configuration through their control panel.

Installation Guide

Follow these step-by-step instructions to install the PHP link exchange script on your web server.

Step 1: Download the Script

  1. After purchasing, download the script ZIP file from your email or customer area
  2. Extract the ZIP file on your local computer
  3. You should see the main files and folders in the package

Step 2: Upload Files to Your Server

Upload all extracted files to your web server using one of these methods:

Option A: FTP/SFTP Upload

  1. Open your FTP client (FileZilla, WinSCP, Cyberduck)
  2. Connect to your server using FTP credentials from your hosting provider
  3. Navigate to public_html/ or www/ directory
  4. Upload all files and folders from the extracted ZIP
  5. Ensure the directory structure remains intact

Option B: cPanel File Manager

  1. Login to your cPanel account
  2. Navigate to File Manager
  3. Go to public_html/ directory
  4. Click Upload and select the ZIP file
  5. After upload completes, right-click the ZIP file and select Extract
  6. Delete the ZIP file after extraction

Step 3: Create a MySQL Database

Before running the installer, create a MySQL database:

Using cPanel:

  1. Login to cPanel
  2. Navigate to MySQL Databases
  3. Create new database (e.g., linkexchange)
  4. Create new MySQL user with strong password
  5. Add user to database with ALL PRIVILEGES
Note: Write down your database name, username, and password for the next step.

Step 4: Set File Permissions

Ensure these directories are writable:

chmod 755 public/
chmod 777 public/uploads/
chmod 777 logs/
chmod 755 config/

Step 5: Run the Installation Wizard

  1. Open your browser and navigate to: https://yourdomain.com/install.php
  2. The installation wizard will guide you through the setup

Installation Wizard Steps:

Screen 1: System Requirements Check
  • The installer checks PHP version, extensions, and file permissions
  • Green checkmarks = requirement met
  • Red X marks = requirement not met
  • Click Continue when all checks pass
Screen 2: Database Configuration

Enter your MySQL database details:

  • Database Host: Usually localhost
  • Database Name: The database you created
  • Database Username: Your MySQL user
  • Database Password: Your MySQL password
  • Table Prefix: lex_ (default)

Click Test Connection to verify, then Continue

Screen 3: Admin Account Setup

Create your administrator account:

  • Admin Username: Choose a unique username
  • Admin Email: Your email for notifications
  • Admin Password: Strong password (minimum 8 characters)

Click Create Admin Account

Screen 4: Site Configuration

Configure basic site settings:

  • Site Name: Your link directory name
  • Site URL: Full URL including http:// or https://
  • Default Language: Select primary language
  • Timezone: Select your timezone

Click Complete Installation

Screen 5: Installation Complete
  • Success! Database tables have been created
  • IMPORTANT: Delete install.php file for security
  • Click Go to Admin Panel to login

Step 6: Delete Installation Files

Security Notice: After installation, immediately delete install.php

Post-Installation Checklist

  • Database created and connected successfully
  • Admin account created and can login
  • install.php deleted
  • File permissions set correctly
  • Frontend accessible at your domain
  • Admin panel accessible at /admin
Installation Complete! Proceed to Configuration to set up email, cron jobs, and other settings.

Initial Configuration

After installation, configure your link exchange script to match your requirements.

Accessing the Admin Panel

  1. Navigate to https://yourdomain.com/admin
  2. Enter the username and password you created during installation
  3. Click Login

Dashboard Overview

After logging in, you'll see the admin dashboard with:

  • Statistics Cards: Total links, pending submissions, categories, broken links
  • Recent Pending Links: Quick view of submissions awaiting approval
  • Activity Log: Recent admin actions with timestamps
  • Click Statistics: 30-day traffic trends chart
  • Quick Actions: Shortcuts to common tasks

Essential Initial Settings

Navigate to Settings → General Settings to configure:

Site Information

Site Name Your link exchange directory name
Site URL Full URL with http:// or https://
Site Description Brief description for meta tags
Admin Email Email to receive admin notifications

Display Settings

Links Per Page Number of links per page (default: 25)
Date Format Choose date display format
Timezone Select your timezone
Default Language Primary language for frontend

Submission Settings

Require Approval Links must be approved before going live (recommended: Yes)
Require Reciprocal Link Submitters must provide reciprocal backlink URL (recommended: Yes)
Verify Before Approval Automatically check reciprocal link before approval
Featured Links Enable featured links option
Tip: Click Save Changes after modifying any settings.

Admin Panel Guide

Complete guide to using the admin panel for managing your link exchange platform.

Main Navigation Menu

Menu Item Description
Dashboard Overview statistics, pending links, activity log, charts
Links View, manage, approve, reject, edit, and delete links
Categories Create, edit, delete, and organize categories
Pages Manage static pages (About, Terms, Privacy, Contact)
Verification View verification history, manually verify links
Reports Links overview, traffic analysis, performance analytics
Emails Email templates, SMTP settings, test email
Settings General, verification, quality, security, cron

Admin Account Security

Protecting your admin account is critical:

  • Strong Password: Use at least 12 characters with letters, numbers, and symbols
  • Unique Username: Avoid common usernames like "admin"
  • Regular Updates: Change password every 3-6 months
  • Activity Monitoring: Review admin activity log regularly

Changing Admin Password

  1. Click Profile in top navigation
  2. Scroll to "Change Password" section
  3. Enter current password
  4. Enter new password (minimum 8 characters)
  5. Confirm new password
  6. Click Update Password

Forgot Password Recovery

  1. On admin login page, click Forgot Password?
  2. Enter your admin email address
  3. Check your email for password reset link
  4. Click the link (valid for 1 hour)
  5. Enter and confirm new password
  6. Click Reset Password
Note: Password reset emails may take a few minutes. Check spam folder if not received.

Category Management

Organize your link directory with hierarchical categories and subcategories.

Creating Categories

  1. Navigate to Categories → All Categories
  2. Click Add New Category
  3. Fill in details:
    • Category Name: Display name (e.g., "Web Development")
    • Slug: URL-friendly name (auto-generated)
    • Parent Category: Select parent for subcategory (optional)
    • Description: Brief description for SEO
    • Icon: Bootstrap icon class (e.g., "bi-code-slash")
    • Display Order: Sort position
    • Meta Title: SEO title tag
    • Meta Description: SEO description
  4. Click Create Category

Hierarchical Categories

Create parent-child relationships:

Technology
├── Web Development
│   ├── PHP Frameworks
│   └── JavaScript Libraries
└── Mobile Apps
    ├── iOS Development
    └── Android Development

Editing Categories

  1. Click Edit icon
  2. Update any fields
  3. Click Save Changes

Deleting Categories

Warning: When deleting a category, you must move existing links to another category or delete them.

Category Icons

Add visual icons using Bootstrap Icons. Popular classes:

bi-globeGeneral websites
bi-code-slashProgramming/development
bi-briefcaseBusiness
bi-cartE-commerce
bi-bookEducation

Category SEO Optimization

  • Meta Title: Custom title (max 60 characters)
  • Meta Description: Brief description (max 160 characters)
  • Slug: SEO-friendly URL (lowercase, hyphens)
  • Description: Include relevant keywords

Static Pages Management

Create and manage custom static pages like About, Terms of Service, Privacy Policy, and Contact.

Creating Pages

  1. Navigate to Pages → All Pages
  2. Click Add New Page
  3. Fill in details:
    • Page Title: Page heading
    • Slug: URL path
    • Content: Page content (HTML editor)
    • Meta Title/Description: SEO tags
    • Active: Publish page
    • Show in Footer: Display link in footer menu
  4. Click Create Page
  5. Page accessible at /page/{slug}

Essential Pages to Create

1. About Us Page

Mission, purpose, benefits, quality standards, team info

2. Terms of Service

Acceptable use, submission guidelines, prohibited content, link removal policy, disclaimer

3. Privacy Policy

Data collection, cookie usage, data security, user rights (GDPR), contact info

4. Contact Page

Contact form, email address, business hours, FAQ link, support policy

Tip: Create Terms and Privacy pages for legal compliance and trust building.

Link Verification System

Automated reciprocal link verification ensures backlinks remain active and properly configured.

How Verification Works

The script checks reciprocal backlinks for:

  • Link Exists: Your link is present on the reciprocal page
  • HTTP Status: Page returns 200 OK (not 404, 500, etc.)
  • No nofollow Tag: Link is not marked with rel="nofollow"
  • No JavaScript Redirect: Link is not cloaked with JavaScript
  • No Frame/iFrame: Link not hidden in frame
  • Anchor Text: Link contains your site name or URL

Manual Verification

Verify a specific link manually:

  1. Navigate to Links → All Links
  2. Click Verify icon next to link
  3. System checks reciprocal page
  4. Results displayed with pass/fail indicators:
    • ✓ Link Found
    • ✓ HTTP 200 OK
    • ✓ No nofollow
    • ✗ Link Not Found
    • ✗ HTTP 404 Error

Verification History

View all verification attempts:

  1. Navigate to Verification → History
  2. See all verification logs with:
    • Link name and URL
    • Verification date and time
    • Result (Success/Failed)
    • Failure reason (if failed)
    • HTTP status code
  3. Filter by status, date range, or link
  4. Export results to CSV

Verification Settings

Configure verification behavior in Settings → Verification Settings:

Verification Frequency How often to verify links (Daily, Weekly, Monthly)
Check HTTP Status Verify reciprocal page returns 200 OK
Check nofollow Fail if link has rel="nofollow" attribute
Check JavaScript Detect JavaScript redirects/cloaking
Require Anchor Text Link must contain your site name
Max Retries Retry failed verification attempts (0-3)
Timeout Maximum seconds to wait for response (10-30)

Handling Failed Verifications

When reciprocal link verification fails:

  1. Link status changes to "Broken Reciprocal"
  2. Link hidden from public listing
  3. Webmaster receives automated email notification
  4. Admin receives notification (if enabled)
  5. Link remains in database for re-verification

Admin Actions for Failed Links:

  • Re-verify: Try verification again manually
  • Contact Owner: Send email requesting link fix
  • Restore: Manually mark as active if false positive
  • Delete: Permanently remove link

Cron Job Setup

Set up automated cron jobs for continuous reciprocal link monitoring.

What is a Cron Job?

A cron job is an automated task that runs on a schedule. For this script, cron jobs automatically verify reciprocal links without manual intervention.

Cron File Location

The cron script is located at: yourdomain.com/cron.php

Setting Up Cron Jobs

Option 1: cPanel Cron Jobs

  1. Login to cPanel
  2. Navigate to Advanced → Cron Jobs
  3. Under "Add New Cron Job", configure:
    • Common Settings: Select "Once Per Day" or "Custom"
    • Minute: 0 (run at top of hour)
    • Hour: 2 (run at 2 AM)
    • Day: * (every day)
    • Month: * (every month)
    • Weekday: * (every weekday)
    • Command: /usr/bin/php /home/username/public_html/cron.php
  4. Click Add New Cron Job
Note: Replace /home/username/public_html with your actual server path.

Option 2: Command Line (SSH)

If you have SSH access, edit crontab directly:

crontab -e

Add this line:

0 2 * * * /usr/bin/php /path/to/your/script/cron.php

Save and exit. This runs daily at 2 AM.

Option 3: Plesk Cron Jobs

  1. Login to Plesk
  2. Go to Websites & Domains → Scheduled Tasks
  3. Click Add Task
  4. Configure:
    • Task type: Run a PHP script
    • Script path: /httpdocs/cron.php
    • Schedule: Daily at specific time
  5. Click OK

Option 4: Web-Based Cron Services

If your host doesn't support cron jobs, use web-based alternatives:

Setup steps:

  1. Create account on web-based cron service
  2. Add new cron job
  3. Enter URL: https://yourdomain.com/cron.php
  4. Set schedule (daily recommended)
  5. Save and activate

Cron Schedule Recommendations

Schedule Recommended For Cron Expression
Daily Most sites (recommended) 0 2 * * *
Every 12 hours High-traffic directories 0 */12 * * *
Weekly Small directories 0 2 * * 0
Every 6 hours Premium monitoring 0 */6 * * *

Verifying Cron Job is Running

Check if cron job executes successfully:

  1. Navigate to Verification → History
  2. Check for recent verification entries with "Cron" as source
  3. Check logs/cron.log file for execution logs
  4. Admin dashboard shows "Last Cron Run" timestamp

Cron Job Settings

Configure cron behavior in Settings → Cron Settings:

Enable Cron Verification Turn automated verification on/off
Links Per Run How many links to verify per cron execution (10-100)
Notify Admin Send email when cron completes
Notify on Failures Only Only email admin about broken links
Email Webmasters Automatically notify owners of broken reciprocal links
Tip: Start with daily cron runs. Adjust frequency based on your directory size and server resources.

Email Templates

Customize automated email notifications sent to link submitters and administrators.

Available Email Templates

Navigate to Emails → Templates to manage these templates:

Template Sent When Recipient
Link Submitted User submits new link Submitter
Link Approved Admin approves pending link Submitter
Link Rejected Admin rejects link submission Submitter
Reciprocal Link Broken Verification detects broken reciprocal link Webmaster
Reciprocal Link Fixed Broken link verified and restored Webmaster
Admin Notification New link submitted Admin
Cron Summary Cron job completes Admin

Editing Email Templates

  1. Click Edit next to template
  2. Customize fields:
    • Subject: Email subject line
    • Body: Email content (HTML supported)
    • Enable/Disable: Turn template on/off
  3. Use placeholders for dynamic content:
    • {site_name} – Your site name
    • {site_url} – Your site URL
    • {link_name} – Submitted link name
    • {link_url} – Submitted link URL
    • {category} – Link category
    • {submitter_email} – Submitter email
    • {rejection_reason} – Reason for rejection
    • {reciprocal_url} – Reciprocal page URL
    • {admin_email} – Admin email address
  4. Click Save Template

Testing Email Templates

  1. Click Send Test Email
  2. Enter test email address
  3. Click Send
  4. Check inbox for test email

Email Settings

Configure SMTP settings for reliable email delivery.

Email Configuration

Navigate to Emails → Settings to configure:

Sender Information

From Name Name displayed in "From" field (e.g., "Link Directory Support")
From Email Email address used as sender (e.g., noreply@yourdomain.com)
Reply-To Email Email for recipient replies (optional)

SMTP Configuration

Recommended for reliable delivery:

SMTP Host Your mail server (e.g., smtp.gmail.com, mail.yourdomain.com)
SMTP Port 587 (TLS) or 465 (SSL)
SMTP Username Your email address or SMTP username
SMTP Password Your email password or app-specific password
Encryption TLS (recommended) or SSL

Popular SMTP Providers

Gmail/Google Workspace

  • Host: smtp.gmail.com
  • Port: 587
  • Encryption: TLS
  • Note: Use App Password if 2FA enabled

SendGrid

  • Host: smtp.sendgrid.net
  • Port: 587
  • Username: apikey
  • Password: Your SendGrid API key

Mailgun

  • Host: smtp.mailgun.org
  • Port: 587
  • Username: Your Mailgun SMTP username
  • Password: Your Mailgun SMTP password

Testing Email Configuration

  1. After configuring SMTP settings
  2. Click Send Test Email
  3. Enter your email address
  4. Click Send
  5. Check inbox for test message
  6. If not received, check spam folder and SMTP credentials
Tip: Use dedicated SMTP services (SendGrid, Mailgun) for better deliverability than PHP mail() function.

System Settings

Configure quality scoring, auto-rejection rules, and spam detection.

Quality Scoring Settings

Navigate to Settings → Quality Settings:

Enable Quality Scoring Assign quality scores to submissions
Minimum Score for Auto-Approval Score threshold (0-100) for automatic approval
Check Domain Age Higher score for older domains
Check Page Rank Consider domain authority
Check Content Length Prefer detailed descriptions

Auto-Rejection Rules

Navigate to Settings → Auto-Rejection:

Blocked Keywords Comma-separated spam keywords to auto-reject
Blocked Domains Domain blacklist (e.g., spam sites)
Reject Shortened URLs Block bit.ly, tinyurl.com, etc.
Reject IP Addresses Block direct IP URLs
Minimum Description Length Reject submissions with short descriptions
Maximum Links in Description Reject spammy descriptions with excessive links

CAPTCHA Settings

Prevent bot submissions:

Enable CAPTCHA Show CAPTCHA on submission form
CAPTCHA Type Built-in image CAPTCHA or Google reCAPTCHA
reCAPTCHA Site Key Your Google reCAPTCHA site key (if using reCAPTCHA)
reCAPTCHA Secret Key Your Google reCAPTCHA secret key

Reports & Analytics

Track link directory performance with comprehensive reports.

Available Reports

Navigate to Reports to access:

1. Links Overview Report

  • Total active links
  • Pending submissions
  • Rejected links
  • Broken reciprocal links
  • Growth chart (30 days)

2. Traffic Analytics

  • Total link clicks
  • Clicks per link
  • Most clicked links (Top 10)
  • Click trends chart
  • Geographic distribution

3. Category Performance

  • Links per category
  • Category click statistics
  • Popular categories chart
  • Empty categories

4. Verification Report

  • Total verifications run
  • Success vs. failure rate
  • Common failure reasons
  • Verification timeline

5. Submission Report

  • Submissions per day/week/month
  • Approval rate
  • Rejection rate and reasons
  • Auto-rejection statistics

6. Quality Report

  • Average quality scores
  • Distribution by score range
  • High quality vs. low quality links

Exporting Reports

All reports can be exported:

  1. Open desired report
  2. Click Export button
  3. Choose format: CSV, Excel, or PDF
  4. File downloads automatically

Customization

Customize the appearance and branding of your link directory.

Theme Customization

Navigate to Settings → Appearance:

  • Site Logo: Upload custom logo (recommended: 200x60px)
  • Favicon: Upload favicon (16x16px or 32x32px)
  • Primary Color: Main theme color (hex code)
  • Secondary Color: Accent color
  • Footer Text: Custom footer copyright text

Custom CSS

Add custom styles:

  1. Navigate to Settings → Custom CSS
  2. Enter your CSS code
  3. Click Save
  4. Changes apply immediately to frontend

Template Files

Advanced users can modify template files directly:

  • public/css/style.css – Main stylesheet
  • app/views/ – Template files
  • app/views/layout.php – Main layout
Warning: Always backup files before making direct edits. Custom modifications may be overwritten during updates.

Security Best Practices

Protect your link directory from spam, abuse, and attacks.

Security Features

  • CAPTCHA Protection – Prevent bot submissions
  • SQL Injection Prevention – PDO prepared statements
  • XSS Protection – Output escaping
  • CSRF Protection – Token validation
  • Password Hashing – Bcrypt encryption
  • Rate Limiting – Prevent spam submissions

Security Recommendations

  1. Delete install.php after installation
  2. Use HTTPS – Install SSL certificate
  3. Strong Admin Password – 12+ characters, mixed case, symbols
  4. Regular Backups – Backup database and files weekly
  5. Keep Updated – Install script updates when available
  6. File Permissions – Set appropriate chmod (755/644)
  7. Enable CAPTCHA – Reduce spam submissions
  8. Monitor Logs – Check error logs regularly

Spam Prevention

Configure these settings to minimize spam:

  • Enable CAPTCHA on submission form
  • Require reciprocal links
  • Enable quality scoring
  • Configure auto-rejection rules
  • Block known spam keywords and domains
  • Set minimum description length
  • Enable admin approval requirement

Regular Maintenance

  • Review pending submissions regularly
  • Monitor verification reports
  • Check for broken links
  • Update categories and content
  • Review security logs
  • Backup database monthly

Troubleshooting Common Issues

Solutions to common problems you may encounter.

Installation Issues

Issue: "Database Connection Failed"

Solutions:

  • Verify database credentials are correct
  • Check database host (usually localhost)
  • Ensure database user has all privileges
  • Contact hosting provider if database server is down
  • Check MySQL service is running

Issue: "PHP Version Not Supported"

Solutions:

  • Upgrade PHP to version 8.0 or higher
  • Contact hosting provider to enable newer PHP version
  • Check PHP version: Create file with <?php phpinfo(); ?>

Issue: "File Permission Denied"

Solutions:

  • Set folders to 755: chmod 755 public/ config/
  • Set writable folders to 777: chmod 777 public/uploads/ logs/
  • Check file ownership (should match web server user)

Admin Panel Issues

Issue: "Cannot Login to Admin Panel"

Solutions:

  • Use password reset link on login page
  • Check email for reset instructions
  • Clear browser cache and cookies
  • Try different browser or incognito mode
  • Check logs/error.log for errors

Issue: "500 Internal Server Error"

Solutions:

  • Check error logs: logs/error.log
  • Verify .htaccess file exists and is correct
  • Check PHP error display: display_errors = On in php.ini
  • Ensure all required PHP extensions are enabled
  • Check file permissions

Verification Issues

Issue: "Verification Always Fails"

Solutions:

  • Check cURL is enabled: php -m | grep curl
  • Increase verification timeout in settings
  • Verify reciprocal URL is accessible
  • Check if target site blocks automated requests
  • Test manually with browser

Issue: "False Positive - Link Exists But Fails"

Solutions:

  • Target site may use JavaScript to load links
  • Link may be in iframe or frame
  • Site may require authentication/cookies
  • Manually mark link as active if confirmed
  • Adjust verification settings to be less strict

Cron Job Issues

Issue: "Cron Job Not Running"

Solutions:

  • Check cron schedule is correctly configured
  • Verify PHP path in cron command: which php
  • Check cron.php file path is absolute
  • Review cron logs: logs/cron.log
  • Test manually: php cron.php
  • Check cron emails for error messages
  • Use web-based cron as alternative

Issue: "Cron Runs But No Verifications"

Solutions:

  • Check "Enable Cron Verification" is turned on
  • Verify there are active links to verify
  • Check verification frequency settings
  • Review cron.log for error messages

Email Issues

Issue: "Emails Not Sending"

Solutions:

  • Configure SMTP settings properly
  • Test SMTP credentials
  • Check spam/junk folder
  • Use test email function to diagnose
  • Review email logs: logs/email.log
  • Try alternative SMTP provider
  • Ensure port 587/465 is not blocked by firewall

Issue: "Emails Go to Spam"

Solutions:

  • Use authenticated SMTP (not PHP mail)
  • Configure SPF and DKIM records for domain
  • Use reputable SMTP service (SendGrid, Mailgun)
  • Avoid spam trigger words in email content
  • Use consistent "From" email address

Performance Issues

Issue: "Site Loads Slowly"

Solutions:

  • Enable caching in settings
  • Optimize database (remove old logs)
  • Reduce links per page
  • Enable PHP OpCache
  • Use CDN for static assets
  • Upgrade hosting plan if needed
Still Having Issues? Check error logs in logs/ folder for detailed error messages, or contact support with log details.

Frequently Asked Questions

Can I install this on a subdomain?

Yes, you can install the script on any subdomain (e.g., links.yourdomain.com). Simply upload files to the subdomain's public directory and run the installation wizard.

Is the script SEO friendly?

Yes, the script includes clean URLs, meta tags, sitemaps, category optimization, and search engine friendly structure. All links are visible to search engines unless marked noindex.

Can I disable reciprocal link requirement?

Yes, navigate to Settings → General Settings and set "Require Reciprocal Link" to "No". This allows one-way link submissions.

How many links can the script handle?

The script can handle thousands of links efficiently. Performance depends on your server resources. For very large directories (10,000+ links), consider VPS or dedicated hosting.

Can I charge for premium listings?

The script doesn't include payment processing, but you can manually mark links as "featured" after receiving payment through external methods (PayPal, Stripe, etc.).

Is the script multi-language?

The admin panel is in English. The frontend includes language files that can be translated. All text is stored in language files for easy customization.

Can I modify the source code?

Yes, you have full access to all source code. You can modify, customize, and extend the script as needed. We recommend keeping backups before making changes.

How often should verification cron run?

Daily verification is recommended for most directories. High-traffic sites can run every 12 hours, while small directories can run weekly.

What happens if reciprocal link is removed?

The cron job will detect the missing reciprocal link, mark the link as "Broken Reciprocal", hide it from public view, and send notification email to the webmaster.

Can I export link data?

Yes, navigate to Reports and use the Export function to download link data in CSV, Excel, or PDF format.

Does it work with WordPress?

This is a standalone script, not a WordPress plugin. It runs independently and cannot be integrated directly into WordPress sites.

Can I create multiple admin accounts?

The current version supports one admin account. Additional admin accounts can be added with custom development.

Is HTTPS required?

HTTPS is highly recommended for security and SEO, but not technically required. Most hosting providers offer free SSL certificates via Let's Encrypt.

Can I disable CAPTCHA for trusted users?

CAPTCHA applies to all submissions. You can disable it entirely in Settings, but this may increase spam submissions.

How do I backup my link directory?

Backup two things: 1) Database (export via phpMyAdmin), 2) Files (download entire script folder via FTP). Schedule regular automated backups through your hosting control panel.

Support & Updates

Getting Support

If you need assistance with the link exchange script:

Email Support

Send detailed description of your issue including:

  • PHP version and hosting environment
  • Steps to reproduce the issue
  • Screenshots or error messages
  • Relevant log files (if applicable)

Response Time: Within 24-48 hours

Documentation

This comprehensive documentation covers:

  • Installation and configuration
  • Feature usage guides
  • Troubleshooting solutions
  • Best practices and tips

Search this page (Ctrl+F) for specific topics

Video Tutorials

Watch step-by-step video guides:

  • Installation walkthrough
  • Configuration tutorial
  • Cron job setup guide
  • Admin panel overview

Available on our YouTube channel

Before Contacting Support

Please try these steps first:

  1. Search this documentation for your issue
  2. Check the Troubleshooting section
  3. Review FAQ for common questions
  4. Check error logs: logs/error.log, logs/cron.log
  5. Try on a different browser or clear cache
  6. Verify server meets all requirements

Script Updates

We regularly release updates with:

  • Bug fixes and security patches
  • New features and improvements
  • Performance optimizations
  • Compatibility updates

Checking for Updates

  1. Login to admin panel
  2. Check dashboard for update notification
  3. Or visit your customer area for latest version

Applying Updates

Important: Always backup your database and files before updating!
  1. Download latest version from customer area
  2. Backup current installation (database + files)
  3. Read update instructions (included in download)
  4. Upload new files (overwrite old files)
  5. Run update script if provided (e.g., update.php)
  6. Clear cache and test functionality

Customization Services

Need custom features or modifications? We offer:

  • Custom feature development
  • Theme customization and design
  • Third-party API integrations
  • Payment gateway integration
  • Custom reports and analytics
  • Migration from other scripts

Contact us for a quote on custom development work.

Useful Resources

  • Changelog: Review all version updates and changes
  • Developer Documentation: API and code structure reference
  • Community Forum: Connect with other users
  • Blog: Tips, tutorials, and best practices
Thank you for choosing our Link Exchange Script! We're committed to providing excellent support and regular updates to ensure your link directory's success.