← Tilbage til koncepter

PHP Hosting

Alt om hosting til PHP applikationer - webhotel, VPS, cloud hosting og managed platforms.

Kategori: Infrastructure

🎯 Key Points

  • Shared hosting - Billigst, fint til små sites og WordPress
  • VPS hosting - Bedre performance med dedikerede ressourcer
  • Cloud hosting - Skalerbar infrastruktur fra AWS, DigitalOcean
  • PHP versioner - Mulighed for at skifte mellem PHP 7.4, 8.0, 8.1, 8.2
  • Extensions - Support for nødvendige PHP extensions
  • Database - MySQL eller PostgreSQL support
  • SSL certifikater - Gratis Let's Encrypt integration
  • Deployment - Git, FTP, eller SSH adgang
  • Performance - PHP-FPM, OPcache, memory limits
  • Cron jobs - Scheduled tasks til maintenance

💻 Kode Eksempel

<?php

// .htaccess for clean URLs på shared hosting
// RewriteEngine On
// RewriteCond %{REQUEST_FILENAME} !-f
// RewriteCond %{REQUEST_FILENAME} !-d
// RewriteRule ^(.*)$ index.php/$1 [L]

// Environment detection
if (getenv('APP_ENV') === 'production') {
    error_reporting(0);
    ini_set('display_errors', '0');
} else {
    error_reporting(E_ALL);
    ini_set('display_errors', '1');
}

// Database connection med environment variables
$config = [
    'host' => getenv('DB_HOST') ?: 'localhost',
    'database' => getenv('DB_NAME'),
    'username' => getenv('DB_USER'),
    'password' => getenv('DB_PASS')
];

try {
    $dsn = "mysql:host={$config['host']};dbname={$config['database']}";
    $pdo = new PDO($dsn, $config['username'], $config['password']);
    $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    echo "Connected successfully";
} catch (PDOException $e) {
    error_log($e->getMessage());
    echo "Connection failed. Check logs.";
}

💼 Hvornår bruges det?

  • WordPress og CMS hosting
  • Laravel/Symfony applications
  • E-commerce (WooCommerce, Magento)
  • Custom PHP web applications
  • REST APIs bygget i PHP
  • Legacy PHP projekter

⭐ Best Practices

  • Vælg hosting med opdateret PHP version (minimum 8.0)
  • Brug environment variables til følsomme data
  • Aktiver OPcache for bedre performance
  • Sæt passende memory_limit og max_execution_time
  • Brug SSL certifikater (Let's Encrypt)
  • Hold PHP og dependencies opdateret
  • Brug Composer til dependency management
  • Implementer proper error logging

ℹ️ Quick Info

Kategori
Infrastructure
Sværhedsgrad
Begynder