gpt4 book ai didi

.htaccess - 如何合并两个 .htaccess 重定向?

转载 作者:太空宇宙 更新时间:2023-11-03 13:53:26 25 4
gpt4 key购买 nike

在我的 MVC 应用程序中,我使用 .htaccess 文件将所有请求定向到我的 index.php 文件。此外,我想强制执行 SSL。使用this post ,我添加了“#enforce https”代码。但是,当我将代码添加到我的 .htaccess 文件时,我的浏览器提示说它无法完成请求。我怎样才能在同一个文件中同时拥有两个重写规则?

RewriteEngine On

#redirect to index.php as appropriate
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l

RewriteRule ^(.+)$ index.php?url=$1 [QSA,L]

#enforce https
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

最佳答案

重写为 index.php 的规则有一个正则表达式:^(.+)$,它匹配所有内容。这包括您要重定向的任何内容。您需要在路由规则之前设置重定向规则。此外,您需要确保 index.php 中的 nothing 会将浏览器重定向回非 SSL:

RewriteEngine On

#enforce https
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

#redirect to index.php as appropriate
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l

RewriteRule ^(.+)$ index.php?url=$1 [QSA,L]

关于.htaccess - 如何合并两个 .htaccess 重定向?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31953601/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com