gpt4 book ai didi

apache - htaccess - 在子文件夹中使用域强制 SSL 和 www

转载 作者:太空宇宙 更新时间:2023-11-03 14:32:36 24 4
gpt4 key购买 nike

我正在使用 cPanel 主机,不幸的是,它不允许我访问 Apache conf 文件以设置任何 VirtualHosts。我的域在子文件夹中。我现在也在尝试强制使用 SSL 以及强制使用 www

我的要求:

  • 域需要在子文件夹中,因为我还有其他域
  • 强制使用 SSL
  • 强制 www.在网址中

以下是我的 .htaccess 文件中的内容:

RewriteCond %{HTTP_HOST} ^(www.)?example.com$
RewriteCond %{REQUEST_URI} !^/subfolder/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /subfolder/$1
RewriteCond %{HTTP_HOST} ^(www.)example.com$
RewriteRule ^(/)?$ subfolder/index.php [L]

我进行了各种尝试,似乎满足了我的一两个要求,但并非同时满足所有要求。

感谢任何帮助。

最佳答案

我快到了。在第二行之后,我必须添加几个 RewriteConds。不在 HTTPS 上,也不在 www 上:

RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www\.example\.com$ [NC]

最终的规则集:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www.)?example.com$
RewriteCond %{REQUEST_URI} !^/subfolder/
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www\.example\.com$ [NC]
RewriteRule ^ https://www.example.com%{REQUEST_URI} [NE,L,R]
RewriteRule ^$ /subfolder/ [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /subfolder/$1 [L]

经过测试,它在域中强制使用 SSL 和 WWW,并将所有内容保留在子文件夹中。

关于apache - htaccess - 在子文件夹中使用域强制 SSL 和 www,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51332858/

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