我想把我的symfony 4网站托管在一个共享主机(Cpanel)上,我想把http自动重定向到https。
我发现在很多问题上,我应该改变亩.htaccess,这里是我目前的.htaccess内容。
DirectoryIndex index.php
AddType application/x-lsphp72 .php
<IfModule mime_module>
AddType application/x-httpd-ea-php72 .php .php7 .phtml
</IfModule>
<IfModule mod_rewrite.c>
Options -MultiViews
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ %{ENV:BASE}/index.php [L]
</IfModule>
<IfModule !mod_rewrite.c>
<IfModule mod_alias.c>
RedirectMatch 302 ^/$ /index.php/
</IfModule>
</IfModule>
<IfModule php7_module>
php_flag display_errors On
php_value max_execution_time 30
php_value max_input_time 60
php_value max_input_vars 1000
php_value memory_limit 128M
php_value post_max_size 8M
php_value session.gc_maxlifetime 1440
php_value session.save_path "/var/cpanel/php/sessions/ea-php72"
php_value upload_max_filesize 10M
php_flag zlib.output_compression Off
</IfModule>
<IfModule lsapi_module>
php_flag display_errors On
php_value max_execution_time 30
php_value max_input_time 60
php_value max_input_vars 1000
php_value memory_limit 128M
php_value post_max_size 8M
php_value session.gc_maxlifetime 1440
php_value session.save_path "/var/cpanel/php/sessions/ea-php72"
php_value upload_max_filesize 10M
php_flag zlib.output_compression Off
</IfModule>
<IfModule mime_module>
AddHandler application/x-httpd-ea-php72 .php .php7 .phtml
</IfModule>
我在这个问题上发现 将HTTP重定向到HTTPS 我应该添加。
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://website.com/$1 [R=301,L]
但我得到了ERR_TOO_MANY_REDIRECT错误。
任何你们得到了同样的事情,因为我?
谢谢你的帮助。
而不是 .htaccess
,我建议修改虚拟主机(配置文件在 /etc/apache2/sites-available
)
做到这一点,你就可以了。
# Catch and redirect all http
<VirtualHost *:80>
ServerName example.com
Redirect / https://example.com/
</VirtualHost>
<VirtualHost _default_:443>
ServerName example.com
# Rest of your vhost
</VirtualHost>
我通过以下方法解决了这个问题 security.yaml
access_control:
- { path: ^/my-path, requires_channel: https }
现在当我进入 http:/my-website.commy-path。 我自动跳转到了https。