您好我正在使用 Deployer 来部署 Craft CMS 网站。该站点符号链接到名为“当前”的目录。我正在使用 mod rewrite 从文档根目录中的 url 中删除 /current/public ,如下所示:
RewriteEngine On
RewriteCond %{REQUEST_URI} !current/public/
RewriteRule (.*) /current/public/$1 [L]
在当前/公共文件夹中有这个 htaccess 来删除 index.php 并创建漂亮的 url:
RewriteEngine On
# Send would-be 404 requests to Craft
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/(favicon\.ico|apple-touch-icon.*\.png)$ [NC]
RewriteRule (.+) index.php?p=$1 [QSA,L]
编辑 - 测试
以下工作强制使用 HTTPS,但我的 url 看起来像:example.com/current/public/about 等
RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-Proto} !=https
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [R=302,L]
# Send would-be 404 requests to Craft
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/(favicon\.ico|apple-touch-icon.*\.png)$ [NC]
RewriteRule (.+) index.php?p=$1 [QSA,L]
如何调整它以强制站点始终使用 HTTPS?