【发布时间】:2021-12-28 18:38:49
【问题描述】:
我目前正在尝试设置一个 .htaccess 文件,但我有点挣扎,因为我们还没有在学校学习它。
目标是将http重写为https并更改看到的url以删除可见的/public/。
我的文件夹是这样的
website
config
~
controller
~
model
~
public
index.php
view
~
而且服务器似乎自动将用户从https://mywebsite.com 发送到https://mywebsite.com/public
我的 htaccess 看起来像这样
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteCond %{ENV:HTTPS} !on
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteCond %{REQUEST_URI} ^/public/(.*)
RewriteRule (.*) /%1
所以我设法设置了 https。但是每次我尝试将 url 从 mywebsite.com/public/ 更改为 mywebsite.com 时,它都保持不变,我会回到根目录,如果我尝试手动进入公共过滤器,我最终会得到mywebsite.com/public/public/ 每次尝试访问该文件夹时都有一个 public/。 有人可以帮忙吗?
【问题讨论】:
标签: apache .htaccess model-view-controller https url-rewriting