update webhook fix
This commit is contained in:
@@ -1 +1,53 @@
|
|||||||
Options -Indexes
|
# Security - Disable directory listing
|
||||||
|
Options -Indexes
|
||||||
|
|
||||||
|
# Enable compression
|
||||||
|
<IfModule mod_deflate.c>
|
||||||
|
AddOutputFilterByType DEFLATE text/plain
|
||||||
|
AddOutputFilterByType DEFLATE text/html
|
||||||
|
AddOutputFilterByType DEFLATE text/xml
|
||||||
|
AddOutputFilterByType DEFLATE text/css
|
||||||
|
AddOutputFilterByType DEFLATE application/xml
|
||||||
|
AddOutputFilterByType DEFLATE application/xhtml+xml
|
||||||
|
AddOutputFilterByType DEFLATE application/rss+xml
|
||||||
|
AddOutputFilterByType DEFLATE application/javascript
|
||||||
|
AddOutputFilterByType DEFLATE application/x-javascript
|
||||||
|
</IfModule>
|
||||||
|
|
||||||
|
# Set caching headers
|
||||||
|
<IfModule mod_expires.c>
|
||||||
|
ExpiresActive On
|
||||||
|
ExpiresByType text/css "access plus 1 month"
|
||||||
|
ExpiresByType application/javascript "access plus 1 month"
|
||||||
|
ExpiresByType image/png "access plus 1 month"
|
||||||
|
ExpiresByType image/jpg "access plus 1 month"
|
||||||
|
ExpiresByType image/jpeg "access plus 1 month"
|
||||||
|
ExpiresByType image/gif "access plus 1 month"
|
||||||
|
ExpiresByType image/ico "access plus 1 month"
|
||||||
|
ExpiresByType image/svg+xml "access plus 1 month"
|
||||||
|
ExpiresByType text/html "access plus 1 hour"
|
||||||
|
</IfModule>
|
||||||
|
|
||||||
|
# Security headers
|
||||||
|
<IfModule mod_headers.c>
|
||||||
|
Header always set X-Content-Type-Options nosniff
|
||||||
|
Header always set X-Frame-Options DENY
|
||||||
|
Header always set X-XSS-Protection "1; mode=block"
|
||||||
|
Header always set Referrer-Policy "strict-origin-when-cross-origin"
|
||||||
|
</IfModule>
|
||||||
|
|
||||||
|
# PHP settings (if needed)
|
||||||
|
<IfModule mod_php7.c>
|
||||||
|
php_flag display_errors Off
|
||||||
|
php_value error_reporting E_ALL & ~E_DEPRECATED & ~E_STRICT
|
||||||
|
</IfModule>
|
||||||
|
|
||||||
|
<IfModule mod_php8.c>
|
||||||
|
php_flag display_errors Off
|
||||||
|
php_value error_reporting E_ALL & ~E_DEPRECATED & ~E_STRICT
|
||||||
|
</IfModule>
|
||||||
|
|
||||||
|
# Force HTTPS (uncomment if you have SSL certificate)
|
||||||
|
# RewriteEngine On
|
||||||
|
# RewriteCond %{HTTPS} off
|
||||||
|
# RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
|
||||||
89
Profice WebSite/DEPLOYMENT.md
Normal file
89
Profice WebSite/DEPLOYMENT.md
Normal file
@@ -0,0 +1,89 @@
|
|||||||
|
# Profice Website - Server Deployment Guide
|
||||||
|
|
||||||
|
## 🚀 Ready for Production
|
||||||
|
|
||||||
|
Your website has been prepared for server hosting with the following optimizations:
|
||||||
|
|
||||||
|
### ✅ Completed Setup
|
||||||
|
|
||||||
|
#### 1. **Webhook Configuration Updated**
|
||||||
|
- ✅ Switched to production webhook URLs
|
||||||
|
- ✅ Debug mode disabled for security
|
||||||
|
- ✅ Using correct N8N webhook IDs
|
||||||
|
|
||||||
|
#### 2. **Server Security & Performance (.htaccess)**
|
||||||
|
- ✅ Directory listing disabled
|
||||||
|
- ✅ GZIP compression enabled
|
||||||
|
- ✅ Browser caching configured
|
||||||
|
- ✅ Security headers set
|
||||||
|
- ✅ PHP error display disabled
|
||||||
|
- ✅ HTTPS redirect ready (uncomment when SSL is active)
|
||||||
|
|
||||||
|
#### 3. **Character Encoding Fixed**
|
||||||
|
- ✅ All German special characters corrected
|
||||||
|
- ✅ UTF-8 encoding properly configured
|
||||||
|
|
||||||
|
#### 4. **File Structure Clean**
|
||||||
|
- ✅ Test files removed
|
||||||
|
- ✅ Production-ready configuration
|
||||||
|
|
||||||
|
## 📁 Files to Upload
|
||||||
|
|
||||||
|
Upload the entire `Profice WebSite` folder to your server:
|
||||||
|
|
||||||
|
```
|
||||||
|
Profice WebSite/
|
||||||
|
├── .htaccess # Server configuration
|
||||||
|
├── index.html # Homepage
|
||||||
|
├── sites/ # Subpages
|
||||||
|
│ ├── offers.html
|
||||||
|
│ ├── leads.html
|
||||||
|
│ ├── website.html
|
||||||
|
│ ├── ki-integration.html
|
||||||
|
│ └── automatisation.html
|
||||||
|
├── scripts/ # Backend functionality
|
||||||
|
│ └── add/
|
||||||
|
│ └── send.php # Webhook handler
|
||||||
|
├── style/ # CSS files
|
||||||
|
├── images/ # Image assets
|
||||||
|
└── components/ # Reusable components
|
||||||
|
```
|
||||||
|
|
||||||
|
## 🔧 Server Requirements
|
||||||
|
|
||||||
|
### Minimum Requirements:
|
||||||
|
- ✅ PHP 7.4+ (recommended 8.0+)
|
||||||
|
- ✅ Apache server with .htaccess support
|
||||||
|
- ✅ cURL extension enabled
|
||||||
|
- ✅ JSON extension enabled
|
||||||
|
|
||||||
|
### Optional (for better performance):
|
||||||
|
- SSL certificate (HTTPS)
|
||||||
|
- GZIP compression support
|
||||||
|
- Expires module for caching
|
||||||
|
|
||||||
|
## 🌐 After Upload
|
||||||
|
|
||||||
|
1. **Test the contact form** - Submit a test request
|
||||||
|
2. **Check webhook delivery** - Verify N8N receives requests
|
||||||
|
3. **Test all pages** - Ensure proper navigation
|
||||||
|
4. **Enable HTTPS** (if available) - Uncomment lines 50-53 in .htaccess
|
||||||
|
|
||||||
|
## 🔒 Security Notes
|
||||||
|
|
||||||
|
- All sensitive data (webhooks, tokens) are stored in `send.php`
|
||||||
|
- Debug mode is disabled in production
|
||||||
|
- Security headers are configured
|
||||||
|
- Directory listing is disabled
|
||||||
|
|
||||||
|
## 📞 Support
|
||||||
|
|
||||||
|
If you encounter issues:
|
||||||
|
1. Check server error logs
|
||||||
|
2. Verify PHP extensions (cURL, JSON)
|
||||||
|
3. Test webhook URLs manually
|
||||||
|
4. Ensure file permissions are correct (755 for folders, 644 for files)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
**Your website is now ready for production deployment! 🎉**
|
||||||
@@ -88,7 +88,7 @@
|
|||||||
KI-Telefonassistenten, Chatbots und interne KI-Systeme. Integriert in eure bestehenden Tools.
|
KI-Telefonassistenten, Chatbots und interne KI-Systeme. Integriert in eure bestehenden Tools.
|
||||||
</p>
|
</p>
|
||||||
<p class="hero-proof">
|
<p class="hero-proof">
|
||||||
<span class="green-highlight-box">Für Unternehmen, die wachsen wollen ohne mehr Personal einzustellen.</span>
|
Für Unternehmen, die wachsen wollen ohne mehr Personal einzustellen.
|
||||||
</p>
|
</p>
|
||||||
<div class="hero-buttons">
|
<div class="hero-buttons">
|
||||||
<button class="cta-btn primary" id="kiPhoneBtn">Mit KI sprechen</button>
|
<button class="cta-btn primary" id="kiPhoneBtn">Mit KI sprechen</button>
|
||||||
|
|||||||
@@ -44,12 +44,12 @@ if ($_SERVER['REQUEST_METHOD'] === 'OPTIONS') {
|
|||||||
// ==========================================
|
// ==========================================
|
||||||
|
|
||||||
// Environment
|
// Environment
|
||||||
define('USE_PRODUCTION', false); // Use test webhook for debugging
|
define('USE_PRODUCTION', true); // Use production webhook for live server
|
||||||
define('DEBUG_MODE', true); // Enable debug to see errors
|
define('DEBUG_MODE', false); // Disable debug for production
|
||||||
|
|
||||||
// N8N Webhooks
|
// N8N Webhooks
|
||||||
define('WEBHOOK_TEST', 'https://n8n.profice.de/webhook-test/8658d57e-2348-4046-90a5-7551708f8d50');
|
define('WEBHOOK_TEST', 'https://n8n.profice.de/webhook-test/d94ef798-3f43-46dd-8207-1e335e64518f');
|
||||||
define('WEBHOOK_PROD', 'https://n8n.profice.de/webhook/8658d57e-2348-4046-90a5-7551708f8d50');
|
define('WEBHOOK_PROD', 'https://n8n.profice.de/webhook/d94ef798-3f43-46dd-8207-1e335e64518f');
|
||||||
define('WEBHOOK_URL', USE_PRODUCTION ? WEBHOOK_PROD : WEBHOOK_TEST);
|
define('WEBHOOK_URL', USE_PRODUCTION ? WEBHOOK_PROD : WEBHOOK_TEST);
|
||||||
|
|
||||||
// Google Analytics
|
// Google Analytics
|
||||||
|
|||||||
@@ -62,7 +62,7 @@
|
|||||||
<form id="contactForm">
|
<form id="contactForm">
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label for="name">Name *</label>
|
<label for="name">Name *</label>
|
||||||
<input type="text" id="name" name="name" required placeholder="Ihr vollständiger Name">
|
<input type="text" id="name" name="name" required placeholder="Ihr vollständiger Name">
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
@@ -76,18 +76,18 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label for="service">Gewünschte Dienstleistung *</label>
|
<label for="service">Gewünschte Dienstleistung *</label>
|
||||||
<select id="service" name="service" required>
|
<select id="service" name="service" required>
|
||||||
<option value="" disabled selected>Bitte wählen...</option>
|
<option value="" disabled selected>Bitte wählen...</option>
|
||||||
<option value="website">Website</option>
|
<option value="website">Website</option>
|
||||||
<option value="ki-integration">KI Integration</option>
|
<option value="ki-integration">KI Integration</option>
|
||||||
<option value="automatisation">Automatisation</option>
|
<option value="automatisation">Automatisation</option>
|
||||||
<option value="unabhaengige-wahl">Unabhängige Wahl</option>
|
<option value="unabhaengige-wahl">Unabhängige Wahl</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label for="budget">Budget (€)</label>
|
<label for="budget">Budget (€)</label>
|
||||||
<input type="text" id="budget" name="budget" placeholder="z.B. 5000 - 10000">
|
<input type="text" id="budget" name="budget" placeholder="z.B. 5000 - 10000">
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
@@ -69,15 +69,15 @@
|
|||||||
<div class="service-header">
|
<div class="service-header">
|
||||||
<div class="service-icon">ðŸŒ</div>
|
<div class="service-icon">ðŸŒ</div>
|
||||||
<h1 class="service-title">Website Entwicklung</h1>
|
<h1 class="service-title">Website Entwicklung</h1>
|
||||||
<p class="service-subtitle">Moderne, responsive Webseiten, die konvertieren und Ihre Marke perfekt repräsentieren</p>
|
<p class="service-subtitle">Moderne, responsive Webseiten, die konvertieren und Ihre Marke perfekt repräsentieren</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- Service Description -->
|
<!-- Service Description -->
|
||||||
<section class="service-section">
|
<section class="service-section">
|
||||||
<h2 class="section-title">Unsere Webentwicklungsdienstleistungen</h2>
|
<h2 class="section-title">Unsere Webentwicklungsdienstleistungen</h2>
|
||||||
<p class="section-text">
|
<p class="section-text">
|
||||||
Wir entwickeln maßgeschneiderte Websites, die nicht nur gut aussehen, sondern auch Ergebnisse liefern.
|
Wir entwickeln maßgeschneiderte Websites, die nicht nur gut aussehen, sondern auch Ergebnisse liefern.
|
||||||
Von der Konzeption über das Design bis zur Implementierung und Wartung begleiten wir Sie durch den gesamten Prozess.
|
Von der Konzeption über das Design bis zur Implementierung und Wartung begleiten wir Sie durch den gesamten Prozess.
|
||||||
</p>
|
</p>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
@@ -88,7 +88,7 @@
|
|||||||
<div class="feature-item">
|
<div class="feature-item">
|
||||||
<div class="feature-icon">🎨</div>
|
<div class="feature-icon">🎨</div>
|
||||||
<h3>Responsive Design</h3>
|
<h3>Responsive Design</h3>
|
||||||
<p>Perfekte Darstellung auf allen Geräten - von Desktop bis Mobile</p>
|
<p>Perfekte Darstellung auf allen Geräten - von Desktop bis Mobile</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="feature-item">
|
<div class="feature-item">
|
||||||
<div class="feature-icon">âš¡</div>
|
<div class="feature-icon">âš¡</div>
|
||||||
@@ -98,12 +98,12 @@
|
|||||||
<div class="feature-item">
|
<div class="feature-item">
|
||||||
<div class="feature-icon">🔒</div>
|
<div class="feature-icon">🔒</div>
|
||||||
<h3>SEO-Freundlich</h3>
|
<h3>SEO-Freundlich</h3>
|
||||||
<p>Technische Grundlagen für gute Suchmaschinenplatzierungen</p>
|
<p>Technische Grundlagen für gute Suchmaschinenplatzierungen</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="feature-item">
|
<div class="feature-item">
|
||||||
<div class="feature-icon">🔧</div>
|
<div class="feature-icon">🔧</div>
|
||||||
<h3>CMS-Integration</h3>
|
<h3>CMS-Integration</h3>
|
||||||
<p>Einfache Content-Verwaltung für Ihre Mitarbeiter</p>
|
<p>Einfache Content-Verwaltung für Ihre Mitarbeiter</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="feature-item">
|
<div class="feature-item">
|
||||||
<div class="feature-icon">🛡ï¸</div>
|
<div class="feature-icon">🛡ï¸</div>
|
||||||
@@ -154,7 +154,7 @@
|
|||||||
<div class="process-number">5</div>
|
<div class="process-number">5</div>
|
||||||
<div class="process-content">
|
<div class="process-content">
|
||||||
<h3>Support & Wartung</h3>
|
<h3>Support & Wartung</h3>
|
||||||
<p>Laufende Optimierung und technische Unterstützung</p>
|
<p>Laufende Optimierung und technische Unterstützung</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -180,8 +180,8 @@
|
|||||||
|
|
||||||
<!-- CTA Section -->
|
<!-- CTA Section -->
|
||||||
<section class="service-section">
|
<section class="service-section">
|
||||||
<h2 class="section-title">Bereit für Ihre neue Website?</h2>
|
<h2 class="section-title">Bereit für Ihre neue Website?</h2>
|
||||||
<p class="section-text">Lassen Sie uns Ihr Projekt an und wir erstellen ein maßgeschneidertes Angebot.</p>
|
<p class="section-text">Lassen Sie uns Ihr Projekt an und wir erstellen ein maßgeschneidertes Angebot.</p>
|
||||||
<div class="cta-buttons">
|
<div class="cta-buttons">
|
||||||
<a href="offers.html?service=website" class="cta-btn primary">Projekt starten</a>
|
<a href="offers.html?service=website" class="cta-btn primary">Projekt starten</a>
|
||||||
<a href="offers.html" class="cta-btn secondary">Mehr erfahren</a>
|
<a href="offers.html" class="cta-btn secondary">Mehr erfahren</a>
|
||||||
|
|||||||
@@ -805,7 +805,7 @@ body {
|
|||||||
backdrop-filter: blur(2px);
|
backdrop-filter: blur(2px);
|
||||||
border: 1px solid rgba(34, 197, 94, 0.3);
|
border: 1px solid rgba(34, 197, 94, 0.3);
|
||||||
box-shadow: 0 2px 8px rgba(34, 197, 94, 0.2);
|
box-shadow: 0 2px 8px rgba(34, 197, 94, 0.2);
|
||||||
margin-right: 80px; /* Move even further to the left */
|
margin-right: 0px; /* Move even further to the left */
|
||||||
position: relative;
|
position: relative;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user