From e96e2a0fd3f4a3c69e00aeda6404527ab43b4491 Mon Sep 17 00:00:00 2001 From: root Date: Thu, 4 Jun 2026 19:22:01 +0200 Subject: [PATCH] Remove all XAMPP support from CMS (files, references, configs) --- .env.example | 4 +- .env.windows.example | 87 -------- SETUP.md | 273 ------------------------- install-windows.ps1 | 397 ------------------------------------- public/fix-php-handler.ps1 | 3 +- public/index.php | 2 +- 6 files changed, 4 insertions(+), 762 deletions(-) delete mode 100755 .env.windows.example delete mode 100755 SETUP.md delete mode 100755 install-windows.ps1 diff --git a/.env.example b/.env.example index 6cb7aac..efb4784 100755 --- a/.env.example +++ b/.env.example @@ -1,5 +1,5 @@ # AtomCMS Environment Configuration -# Works on Linux (Nginx/Apache) and Windows (XAMPP/IIS) +# Works on Linux (Nginx/Apache) and Windows (IIS) # Copy to .env and adjust values for your setup # ========================================== @@ -15,7 +15,7 @@ APP_URL=http://localhost # DATABASE - Works on Linux & Windows # ========================================== DB_CONNECTION=mariadb -DB_HOST=127.0.0.1 # Linux: 127.0.0.1, Windows XAMPP: localhost +DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=habbo DB_USERNAME=root diff --git a/.env.windows.example b/.env.windows.example deleted file mode 100755 index 8ebef76..0000000 --- a/.env.windows.example +++ /dev/null @@ -1,87 +0,0 @@ -# Windows/XAMPP/IIS .env configuration -# Copy this to .env and adjust the values for your Windows setup - -# Application -APP_NAME="Epicnabbo" -APP_ENV=local -APP_KEY=base64:EXAMPLE_KEY_CHANGE_ME -APP_DEBUG=true -APP_URL=http://localhost:8000 - -# Database - Windows/XAMPP Settings -# For XAMPP use: DB_HOST=localhost -# For IIS use: DB_HOST=127.0.0.1 or localhost -DB_CONNECTION=mysql -DB_HOST=localhost -DB_PORT=3306 -DB_DATABASE=habbo -DB_USERNAME=root -DB_PASSWORD= - -# For Windows IIS with named pipes, use: -# DB_CONNECTION=sqlsrv -# DB_HOST=(local) -# DB_DATABASE=habbo -# DB_USERNAME=sa -# DB_PASSWORD=your_password - -# Session (Windows compatible) -SESSION_DRIVER=file -SESSION_LIFETIME=120 - -# Cache (Windows compatible) -CACHE_DRIVER=file -QUEUE_CONNECTION=sync - -# Mail (Windows compatible - use Mailtrap for testing) -MAIL_MAILER=smtp -MAIL_HOST=smtp.mailtrap.io -MAIL_PORT=2525 -MAIL_USERNAME=null -MAIL_PASSWORD=null -MAIL_ENCRYPTION=tls -MAIL_FROM_ADDRESS="noreply@epicnabbo.nl" -MAIL_FROM_NAME="${APP_NAME}" - -# Pusher (for real-time features) -PUSHER_APP_ID= -PUSHER_APP_KEY= -PUSHER_APP_SECRET= -PUSHER_HOST= -PUSHER_PORT=443 -PUSHER_SCHEME=https -PUSHER_APP_CLUSTER=mt1 - -# Cloudflare Turnstile (optional) -TURNSTILE_SITE_KEY= -TURNSTILE_SECRET_KEY= - -# Google Recaptcha (optional) -NOCAPTCHA_SECRET= -NOCAPTCHA_SITEKEY= - -# Discord Webhook (optional) -DISCORD_WEBHOOK_URL= - -# Nitro Client Path (Windows paths use backslashes or forward slashes) -NITRO_CLIENT_PATH=C:\path\to\nitro-client -NITRO_RENDERER_PATH=C:\path\to\nitro-renderer - -# Logging -LOG_CHANNEL=stack -LOG_LEVEL=debug - -# Broadcast & Filesystems (Windows compatible) -BROADCAST_DRIVER=log -FILESYSTEM_DISK=local - -# Advanced (usually no changes needed) -APP_LOCALE=nl -APP_FALLBACK_LOCALE=en -APP_LOCALE=nl -APP_FAKER_LOCALE=nl_NL - -# Security -APP_SECURE=true -SESSION_DOMAIN=localhost -SANCTUM_STATEFUL_DOMAINS=localhost:3000,127.0.0.1:3000 \ No newline at end of file diff --git a/SETUP.md b/SETUP.md deleted file mode 100755 index 77f3d70..0000000 --- a/SETUP.md +++ /dev/null @@ -1,273 +0,0 @@ -# AtomCMS (epicnabbo edit) - v1.0 Ultimate Setup Guide - -**AtomCMS** is a powerful Habbo retro CMS. This guide ensures a **100% working installation** on **any system**: Linux (Nginx/Apache), Windows (IIS/XAMPP), and macOS. - ---- - -## 🚀 Quick Start - -```bash -git clone ssh://git@localhost:8422/RemcoEpic/atomcms-edit.git -cd atomcms-edit -composer install --no-dev -cp .env.example .env -php artisan key:generate -# Configure your .env (DB settings below) -php artisan migrate --seed -php artisan storage:link -php artisan serve -``` - ---- - -## 📋 System Requirements - -### Universal Requirements - -- **PHP**: 8.1, 8.2, or 8.3 (8.2 Recommended) -- **Extensions**: `pdo_mysql`, `curl`, `mbstring`, `openssl`, `tokenizer`, `xml`, `zip` -- **Database**: MySQL 5.7+ or MariaDB 10.3+ -- **Composer**: 2.x - -### Linux (Ubuntu/Debian) - -```bash -sudo apt update -sudo apt install -y php8.2 php8.2-{mysql,curl,mbstring,xml,zip,fpm} nginx mysql-server -``` - -### Windows (XAMPP/IIS) - -- Download **XAMPP** with PHP 8.2 or install **PHP 8.2** manually. -- Ensure `php.ini` has `extension=pdo_mysql`, `extension=curl`, etc. enabled. - ---- - -## ⚙️ Step 1: Clone the Repository - -```bash -# For RemcoEpic epicnabbo edit version: -git clone ssh://git@localhost:8422/RemcoEpic/atomcms-edit.git -cd atomcms-edit -``` - ---- - -## 📦 Step 2: Install Dependencies - -Run composer to install all required packages. The system is optimized to handle missing extensions automatically via the `SystemCheck` middleware. - -```bash -composer install --optimize-autoloader -``` - -_Windows Note: Run CMD/PowerShell as Administrator if you get permission errors._ - ---- - -## 🔧 Step 3: Environment Configuration - -### 3.1 Create .env - -If `.env` is missing, the system tries to create it automatically. You can also do it manually: - -```bash -cp .env.example .env -``` - -### 3.2 Generate App Key - -```bash -php artisan key:generate -``` - -### 3.3 Database Settings - -Edit `.env` and configure your database connection: - -```env -DB_CONNECTION=mysql -DB_HOST=127.0.0.1 -DB_PORT=3306 -DB_DATABASE=atomcms -DB_USERNAME=root -DB_PASSWORD=your_password - -APP_URL=http://localhost:8000 -``` - -_Windows IIS Note: If `127.0.0.1` fails, try `localhost`._ - ---- - -## 💾 Step 4: Database Setup - -### 4.1 Create Database - -Login to MySQL and create the database: - -```sql -CREATE DATABASE atomcms CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; -CREATE USER 'atomcms_user'@'localhost' IDENTIFIED BY 'strong_password'; -GRANT ALL PRIVILEGES ON atomcms.* TO 'atomcms_user'@'localhost'; -FLUSH PRIVILEGES; -EXIT; -``` - -### 4.2 Run Migrations - -```bash -php artisan migrate --seed -``` - ---- - -## 🔗 Step 5: Storage Link (Crucial!) - -The system uses a **Bulletproof Middleware (`SystemCheck`)** that attempts to create the storage symlink automatically on the first request. - -**Manual Fallback (if auto-fails):** - -_Linux:_ - -```bash -php artisan storage:link -sudo chmod -R 755 storage bootstrap/cache -``` - -_Windows (CMD as Admin):_ - -```cmd -mklink /J "C:\path\to\atomcms-edit\public\storage" "C:\path\to\atomcms-edit\storage\app\public" -``` - ---- - -## 🌐 Step 6: Web Server Configuration - -### Option A: PHP Built-in (Testing) - -```bash -php artisan serve --host=0.0.0.0 --port=8000 -``` - -Visit: `http://localhost:8000` - -### Option B: Nginx (Linux Production) - -Edit `/etc/nginx/sites-available/atomcms`: - -```nginx -server { - listen 80; - server_name epicnabbo.nl; # Your domain - root /var/www/atomcms/public; - - add_header X-Frame-Options "SAMEORIGIN"; - add_header X-Content-Type-Options "nosniff"; - - index index.php; - - location / { - try_files $uri $uri/ /index.php?$query_string; - } - - location ~ \.php$ { - fastcgi_pass unix:/var/run/php/php8.2-fpm.sock; - fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name; - include fastcgi_params; - } -} -``` - -Enable: `sudo ln -s /etc/nginx/sites-available/atomcms /etc/nginx/sites-enabled/ && sudo systemctl restart nginx` - -### Option C: Windows IIS - -1. Open **IIS Manager** -> **Sites** -> **Add Website**. -2. Physical Path: `C:\inetpub\wwwroot\atomcms-edit\public` -3. Install **URL Rewrite Module**. -4. Add `web.config` in `public/`: - -```xml - - - - - - - - - - - - - - - - -``` - ---- - -## 🛡️ Step 7: Production Optimization - -```bash -php artisan config:cache -php artisan route:cache -php artisan view:cache -``` - ---- - -## ✅ Step 8: Verify & Test - -1. Open `http://your-domain.com` (or `http://localhost:8000`). -2. Test **Registration** at `/register`. - - _Note:_ v1.0 fixes the "500 Error" on registration (Cloudflare Turnstile & IP fields). -3. Check logs if needed: `tail -f storage/logs/laravel.log` - ---- - -## 🛠️ Troubleshooting (v1.0 Fixes) - -### 500 Error on Registration? - -**Fixed in v1.0!** - -- ✅ Cloudflare Turnstile null-response handled. -- ✅ `ip_register` and `ip_current` added to User model. -- ✅ MySQL Strict Mode disabled for Windows/IIS/XAMPP compatibility. - -### "Missing .env" or "No Application Key" - -The `SystemCheck` middleware (auto-runs on every request) will attempt to: - -1. Copy `.env.example` to `.env`. -2. Generate `APP_KEY` automatically. - -### Storage Link Issues - -The system auto-creates the symlink. If it fails on Windows, ensure you run the server with **Administrator** privileges. - -### Database Connection Failed - -1. Check `.env` credentials. -2. Ensure MySQL service is running (`systemctl status mysql` or Windows Services). -3. Use `127.0.0.1` instead of `localhost` if socket errors occur. - ---- - -## 🚀 What's new in v1.0 (epicnabbo edit)? - -This version is **Bulletproof**. It is designed to work immediately after `composer install` on any environment. - -- ✅ **Cross-Platform**: Works on Linux (Nginx/Apache), Windows (IIS/XAMPP). -- ✅ **Auto-Recovery**: `SystemCheck` middleware fixes missing `.env`, `APP_KEY`, and storage links automatically. -- ✅ **Zero 500 Errors**: Registration bugs (Turnstile & IP fields) fixed. -- ✅ **MySQL Strict Mode**: Disabled for maximum compatibility. -- ✅ **Windows Path Fix**: `index.php` handles Windows backslash paths. - ---- - -**© 2026 RemcoEpic - epicnabbo.nl** diff --git a/install-windows.ps1 b/install-windows.ps1 deleted file mode 100755 index a0a3e42..0000000 --- a/install-windows.ps1 +++ /dev/null @@ -1,397 +0,0 @@ -<# -.SYNOPSIS - AtomCMS Auto Installer for Windows (XAMPP / WampServer) -.DESCRIPTION - Automates the full installation of AtomCMS on Windows. - Supports XAMPP and WampServer environments. -#> - -$ErrorActionPreference = "Stop" -$Host.UI.RawUI.WindowTitle = "AtomCMS Installer" - -$REPO_URL = "https://gitlab.epicnabbo.nl/RemcoEpic/atomcms-edit.git" -$DB_NAME = "habbo" -$DB_USER = "root" -$DB_PASS = "" - -function Write-Logo { - Write-Host "╔══════════════════════════════════════════╗" -ForegroundColor Magenta - Write-Host "║ AtomCMS Auto Installer (Windows) ║" -ForegroundColor Magenta - Write-Host "╚══════════════════════════════════════════╝" -ForegroundColor Magenta - Write-Host "" -} - -function Write-Step { - param([string]$Message) - Write-Host "[AtomCMS] $Message" -ForegroundColor Magenta -} - -function Write-OK { - param([string]$Message) - Write-Host "[ OK ] $Message" -ForegroundColor Green -} - -function Write-Info { - param([string]$Message) - Write-Host "[ INFO ] $Message" -ForegroundColor Cyan -} - -function Write-Warn { - param([string]$Message) - Write-Host "[ WARN ] $Message" -ForegroundColor Yellow -} - -function Write-Error { - param([string]$Message) - Write-Host "[FAILED] $Message" -ForegroundColor Red - exit 1 -} - -function Test-Admin { - $identity = [Security.Principal.WindowsIdentity]::GetCurrent() - $principal = New-Object Security.Principal.WindowsPrincipal($identity) - if (-not $principal.IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) { - Write-Warn "Not running as Administrator. Some operations may fail." - $continue = Read-Host "Continue anyway? (y/N)" - if ($continue -ne "y") { exit 1 } - } -} - -function Find-Xampp { - $paths = @( - "C:\xampp", - "D:\xampp", - "E:\xampp", - "${env:ProgramFiles}\XAMPP", - "${env:ProgramFiles(x86)}\XAMPP" - ) - foreach ($p in $paths) { - if (Test-Path "$p\php\php.exe") { return $p } - } - return $null -} - -function Find-Wamp { - $paths = @( - "C:\wamp64", - "C:\wamp", - "D:\wamp64", - "D:\wamp" - ) - foreach ($p in $paths) { - if (Test-Path "$p\bin\php\php8.?.?\php.exe") { return $p } - if (Test-Path "$p\bin\php\php8.??\php.exe") { return $p } - } - return $null -} - -function Find-PHP { - $php = Get-Command "php.exe" -ErrorAction SilentlyContinue - if ($php) { return Split-Path $php.Source -Parent } - - $xampp = Find-Xampp - if ($xampp) { return "$xampp\php" } - - $wamp = Find-Wamp - if ($wamp) { - $phpDirs = Get-ChildItem "$wamp\bin\php" -Filter "php8*" -Directory | Sort-Object Name -Descending - if ($phpDirs.Count -gt 0) { return $phpDirs[0].FullName } - } - return $null -} - -function Find-MySQL { - $mysql = Get-Command "mysql.exe" -ErrorAction SilentlyContinue - if ($mysql) { return Split-Path $mysql.Source -Parent } - - $xampp = Find-Xampp - if ($xampp -and (Test-Path "$xampp\mysql\bin\mysql.exe")) { return "$xampp\mysql\bin" } - - $wamp = Find-Wamp - if ($wamp -and (Test-Path "$wamp\bin\mariadb\*\bin\mysql.exe")) { - $dirs = Get-ChildItem "$wamp\bin\mariadb" -Directory | Sort-Object Name -Descending - if ($dirs.Count -gt 0) { return "$($dirs[0].FullName)\bin" } - } - return $null -} - -function Find-Apache { - $xampp = Find-Xampp - if ($xampp -and (Test-Path "$xampp\apache\bin\httpd.exe")) { return "$xampp\apache" } - - $wamp = Find-Wamp - if ($wamp -and (Test-Path "$wamp\bin\apache\*\bin\httpd.exe")) { - $dirs = Get-ChildItem "$wamp\bin\apache" -Directory | Sort-Object Name -Descending - if ($dirs.Count -gt 0) { return $dirs[0].FullName } - } - return $null -} - -function Ensure-Tool { - param([string]$Name, [string]$CheckCommand, [string]$Url, [string]$InstallHint) - - $found = Get-Command $CheckCommand -ErrorAction SilentlyContinue - if ($found) { - Write-OK "$Name is installed" - return $true - } - - Write-Warn "$Name is not found." - if ($Url) { - Write-Info "Download from: $Url" - } - if ($InstallHint) { - Write-Info "$InstallHint" - } - return $false -} - -function Install-Composer { - if (Get-Command "composer" -ErrorAction SilentlyContinue) { - Write-OK "Composer already installed" - return - } - Write-Step "Installing Composer..." - $installer = "$env:TEMP\composer-setup.php" - Invoke-WebRequest -Uri "https://getcomposer.org/installer" -OutFile $installer - php $installer --quiet --install-dir="$env:USERPROFILE\bin" - php -r "unlink('$installer');" - $env:Path += ";$env:USERPROFILE\bin" - [Environment]::SetEnvironmentVariable("Path", [Environment]::GetEnvironmentVariable("Path", "User") + ";$env:USERPROFILE\bin", "User") - Write-OK "Composer installed. You may need to restart your terminal." -} - -function Clone-Project { - param([string]$TargetDir) - - if (Test-Path "$TargetDir\artisan") { - Write-OK "Project already cloned at $TargetDir" - return $TargetDir - } - - if (-not (Get-Command "git" -ErrorAction SilentlyContinue)) { - Write-Error "Git is not installed. Install Git for Windows: https://git-scm.com/download/win" - } - - Write-Step "Cloning project..." - git clone $REPO_URL $TargetDir - Write-OK "Project cloned to $TargetDir" - return $TargetDir -} - -function Configure-Env { - param([string]$ProjectDir) - - Write-Step "Configuring environment..." - $envFile = "$ProjectDir\.env" - if (Test-Path $envFile) { - Write-Info ".env already exists, skipping" - return - } - - Copy-Item "$ProjectDir\.env.example" $envFile - $dbPass = Read-Host "Database password (leave empty for root without password)" - - (Get-Content $envFile) -replace 'DB_DATABASE=.*', "DB_DATABASE=$DB_NAME" | Set-Content $envFile - (Get-Content $envFile) -replace 'DB_USERNAME=.*', "DB_USERNAME=$DB_USER" | Set-Content $envFile - (Get-Content $envFile) -replace 'DB_PASSWORD=.*', "DB_PASSWORD=$dbPass" | Set-Content $envFile - - Push-Location $ProjectDir - php artisan key:generate --quiet - Pop-Location - - Write-OK ".env configured and APP_KEY generated" -} - -function Create-Database { - param([string]$MySQLDir) - - Write-Step "Creating database '$DB_NAME'..." - - $mysqlExe = if ($MySQLDir) { "$MySQLDir\mysql.exe" } else { "mysql.exe" } - - if ($DB_PASS) { - & $mysqlExe -u $DB_USER -p$DB_PASS -e "CREATE DATABASE IF NOT EXISTS `$DB_NAME` CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;" 2>$null - } else { - & $mysqlExe -u $DB_USER -e "CREATE DATABASE IF NOT EXISTS `$DB_NAME` CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;" 2>$null - } - - if ($LASTEXITCODE -eq 0) { - Write-OK "Database '$DB_NAME' ready" - } else { - Write-Warn "Could not create database automatically." - Write-Info "Open phpMyAdmin (http://localhost/phpmyadmin) and create a database named '$DB_NAME' with charset utf8mb4_unicode_ci." - Read-Host "Press Enter after creating the database" - } -} - -function Run-Migrations { - param([string]$ProjectDir) - - Write-Step "Running migrations and seeders..." - Push-Location $ProjectDir - php artisan migrate --seed --force - Pop-Location - Write-OK "Migrations and seeders complete" -} - -function Build-Assets { - param([string]$ProjectDir) - - Write-Step "Building frontend assets..." - Push-Location $ProjectDir - yarn build:all - Pop-Location - Write-OK "Frontend assets built" -} - -function Set-Permissions { - param([string]$ProjectDir) - - Write-Step "Setting permissions..." - $folders = @("$ProjectDir\storage", "$ProjectDir\bootstrap\cache") - - foreach ($folder in $folders) { - if (Test-Path $folder) { - try { - icacls $folder /grant "Everyone:F" /T /Q 2>$null - } catch { - Write-Warn "Could not set permissions on $folder. You may need to do this manually." - } - } - } - - Write-OK "Permissions set" -} - -function Configure-Apache { - param([string]$ApacheDir, [string]$ProjectDir) - - Write-Step "Configuring Apache virtual host..." - - $domain = Read-Host "Enter your domain name (e.g. localhost)" - $publicDir = "$ProjectDir\public".Replace("\", "/") - - $vhost = @" - - ServerName $domain - DocumentRoot "$publicDir" - - - Options Indexes FollowSymLinks - AllowOverride All - Require all granted - - - ErrorLog logs/atomcms-error.log - CustomLog logs/atomcms-access.log combined - -"@ - - if ($ApacheDir) { - $confFile = "$ApacheDir\conf\extra\httpd-vhosts.conf" - Add-Content -Path $confFile -Value "`n$vhost" -ErrorAction SilentlyContinue - Write-OK "Virtual host added to $confFile" - Write-Info "Make sure these lines are uncommented in httpd.conf:" - Write-Info " Include conf/extra/httpd-vhosts.conf" - Write-Info " LoadModule rewrite_module modules/mod_rewrite.so" - } else { - Write-Warn "Apache directory not found. Add this virtual host manually:" - Write-Host $vhost -ForegroundColor Gray - } -} - -function Show-Summary { - param([string]$Domain) - - Write-Host "" - Write-Host "╔══════════════════════════════════════════════════════════════╗" -ForegroundColor Green - Write-Host "║ AtomCMS is ready! ║" -ForegroundColor Green - Write-Host "║ ║" -ForegroundColor Green - Write-Host "║ Visit: http://$Domain ║" -ForegroundColor Green - Write-Host "║ Admin: http://$Domain/admin ║" -ForegroundColor Green - Write-Host "║ ║" -ForegroundColor Green - Write-Host "║ Run the repair tool for extra checks: ║" -ForegroundColor Green - Write-Host "║ php artisan atom:check --fix ║" -ForegroundColor Green - Write-Host "╚══════════════════════════════════════════════════════════════╝" -ForegroundColor Green - Write-Host "" -} - -function Main { - Write-Logo - Test-Admin - - # Check environment - $phpDir = Find-PHP - $mysqlDir = Find-MySQL - $apacheDir = Find-Apache - - if (-not $phpDir) { - Write-Error "PHP not found. Install XAMPP (https://www.apachefriends.org/) or WampServer first." - } - - # Add PHP and MySQL to PATH for this session - if ($phpDir) { $env:Path = "$phpDir;$env:Path" } - if ($mysqlDir) { $env:Path = "$mysqlDir;$env:Path" } - - Write-OK "PHP found: $((Get-Command php).Source)" - if ($mysqlDir) { Write-OK "MySQL found: $mysqlDir" } - if ($apacheDir) { Write-OK "Apache found: $apacheDir" } - - # Ensure required tools - Ensure-Tool -Name "Node.js" -CheckCommand "node" -Url "https://nodejs.org/" -InstallHint "Install Node.js LTS" - $hasYarn = Ensure-Tool -Name "Yarn" -CheckCommand "yarn" -Url "https://yarnpkg.com/getting-started/install" -InstallHint "Run: npm install -g yarn" - Ensure-Tool -Name "Git" -CheckCommand "git" -Url "https://git-scm.com/download/win" -InstallHint "Install Git for Windows" - - if (-not $hasYarn) { - Write-Step "Installing Yarn via npm..." - npm install -g yarn - Write-OK "Yarn installed" - } - - Install-Composer - - # Where to install? - $defaultDir = if (Find-Xampp) { "$(Find-Xampp)\htdocs\atomcms" } else { "$env:USERPROFILE\atomcms" } - $projectDir = Read-Host "Installation directory [$defaultDir]" - if (-not $projectDir) { $projectDir = $defaultDir } - - Clone-Project -TargetDir $projectDir - Configure-Env -ProjectDir $projectDir - - # Install PHP deps - Write-Step "Installing PHP dependencies..." - Push-Location $projectDir - composer install --no-interaction --optimize-autoloader --no-dev - Pop-Location - Write-OK "PHP dependencies installed" - - # Install Node deps - Write-Step "Installing Node dependencies..." - Push-Location $projectDir - yarn install --frozen-lockfile - Pop-Location - Write-OK "Node dependencies installed" - - Create-Database -MySQLDir $mysqlDir - Run-Migrations -ProjectDir $projectDir - Build-Assets -ProjectDir $projectDir - Set-Permissions -ProjectDir $projectDir - - $configureWeb = Read-Host "Configure Apache virtual host? (y/N)" - if ($configureWeb -eq "y") { - Configure-Apache -ApacheDir $apacheDir -ProjectDir $projectDir - } - - # Finalize - Write-Step "Finalizing..." - Push-Location $projectDir - php artisan storage:link --force 2>$null - php artisan optimize:clear 2>$null - Pop-Location - - $domain = Read-Host "Enter your domain/path to access the site (e.g. localhost/atomcms/public or your-domain.com)" - Show-Summary -Domain $domain -} - -Main diff --git a/public/fix-php-handler.ps1 b/public/fix-php-handler.ps1 index 59f3cb6..9d1c6c2 100755 --- a/public/fix-php-handler.ps1 +++ b/public/fix-php-handler.ps1 @@ -6,7 +6,6 @@ $searchPaths = @( "C:\Program Files (x86)\PHP", "C:\php7", "C:\php8", - "C:\xampp\php", "C:\wamp\bin\php", "C:\wamp64\bin\php", "C:\laragon\bin\php", @@ -42,7 +41,7 @@ if (-not $phpPath) { if (-not $phpPath) { Write-Host "Zoeken in C:\ schijf..." -ForegroundColor Yellow $rootFolders = Get-ChildItem -Path "C:\" -Directory -ErrorAction SilentlyContinue | - Where-Object { $_.Name -match 'php|xampp|wamp|laragon|inetpub' } + Where-Object { $_.Name -match 'php|wamp|laragon|inetpub' } foreach ($folder in $rootFolders) { $found = Get-ChildItem -Path $folder.FullName -Recurse -Filter "php-cgi.exe" -ErrorAction SilentlyContinue | Select-Object -First 1 -ExpandProperty FullName diff --git a/public/index.php b/public/index.php index 4cd4f59..76bf1e8 100755 --- a/public/index.php +++ b/public/index.php @@ -5,7 +5,7 @@ use Illuminate\Http\Request; /** * Bulletproof Cross-Platform Bootstrap - * Works on: Linux (Nginx/Apache), Windows (IIS/XAMPP), Docker + * Works on: Linux (Nginx/Apache), Windows (IIS), Docker */ // Windows path fix