From: Vincent Vanwaelscappel Date: Tue, 17 Sep 2024 12:31:25 +0000 (+0200) Subject: wait #7083 @1.5 X-Git-Url: http://git.cubedesigners.com/?a=commitdiff_plain;h=3ca22c91610ee1b393df94672992489c63c9bd16;p=fluidbook-toolbox.git wait #7083 @1.5 --- diff --git a/app/Http/Controllers/Admin/Operations/Tools/StaticSiteUploader.php b/app/Http/Controllers/Admin/Operations/Tools/StaticSiteUploader.php index 107f62a39..3264cb0a7 100644 --- a/app/Http/Controllers/Admin/Operations/Tools/StaticSiteUploader.php +++ b/app/Http/Controllers/Admin/Operations/Tools/StaticSiteUploader.php @@ -73,6 +73,9 @@ trait StaticSiteUploader return redirect($site['url']); } + /** + * @throws \Exception + */ public static function rsync($from, $site, $path = '') { if (is_string($site)) { @@ -80,6 +83,6 @@ trait StaticSiteUploader } $transfer = SFTP::getInstance($site['server'], $site['user'], $site['password'], $site['path'], $site['port'] ?? 22); - $transfer->copy($from, $path, false); + $transfer->copy($from, $path, true); } } diff --git a/app/Models/ToolWebflow.php b/app/Models/ToolWebflow.php index abf6ec9b2..0fdc6b534 100644 --- a/app/Models/ToolWebflow.php +++ b/app/Models/ToolWebflow.php @@ -74,6 +74,7 @@ class ToolWebflow extends ToolboxTranslatableModel $this->addField('seo', BunchOfFieldsMultiple::class, '', ['translatable' => true, 'edit_label' => '%url | %seo_title', 'allows_add' => false, 'allows_delete' => false, 'allows_clone' => false, 'allows_reorder' => false, 'bunch' => SEOPage::class, 'tab' => __('SEO')]); $this->addField('former_sitemap', Code::class, __('Ancienne sitemap'), ['language' => 'xml', 'tab' => __('Redirections')]); $this->addField('redirections', BunchOfFieldsMultiple::class, '', ['translatable' => false, 'edit_label' => '%from → %to', 'bunch' => Redirection::class, 'tab' => __('Redirections')]); + $this->addField('force_https', Checkbox::class, __('Forcer HTTPS'), ['hint' => __('Décocher lorsque le site est installé derrière un proxy prenant en charge le certificat SSL'), 'default' => true, 'tab' => __('Redirections')]); $this->addField('api', Hidden::class); } @@ -485,7 +486,16 @@ class ToolWebflow extends ToolboxTranslatableModel $htaccess = ' RewriteEngine On RewriteBase / + '; + if($this->force_https){ + $htaccess.=' + RewriteCond %{HTTPS} off + RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=308,L] + '; + } + + $htaccess.=' RewriteCond %{HTTP_HOST} !=' . $domain . ' RewriteRule ^(.*)$ https://' . $domain . '/$1 [R=301,L] @@ -512,7 +522,6 @@ class ToolWebflow extends ToolboxTranslatableModel { - $urlmaps = $this->getURLMaps(); $urlmap = $urlmaps[$locale]; $origRelative = $relative; @@ -538,7 +547,6 @@ class ToolWebflow extends ToolboxTranslatableModel } - // Replace URL foreach ($urlmap as $k => $v) { $html = str_replace(ltrim($k, '/'), ltrim($v, '/'), $html); @@ -561,11 +569,10 @@ class ToolWebflow extends ToolboxTranslatableModel $localeURL .= ""; } - $html = str_replace('', '' ."\n". '', $html); + $html = str_replace('', '' . "\n" . '', $html); $html = str_replace('', $localeURL . '' . "\n" . '', $html); - $html = preg_replace('/\s+lang="[a-zA-Z\-_]{2,6}"/', ' lang="' . $locale . '"', $html); @@ -577,7 +584,6 @@ class ToolWebflow extends ToolboxTranslatableModel // Images - // SEO if (!$isMainLocale || $htmlPage) { foreach ($seo as $s) {