【发布时间】:2023-03-19 02:03:02
【问题描述】:
在 godaddy 上托管 public_html 以 Web 根目录的形式提供。我正在尝试在其上安装CodeIgniter,因此我希望整个框架位于webroot 之外(出于安全原因)。为此,在public_html 目录中,我使用以下代码创建了.htaccess:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www.)?example.com$ [NC]
RewriteCond %{REQUEST_URI} !^/sub_webroot/
RewriteRule ^(.*)$ ./sub_webroot/index.php?$1 [L]
目录/文件结构如下:
public_html
.htaccess
CodeIgniter (whole framework files except index.php)
sub_webroot
index.php (CI index.php)
assets
sample.png
框架加载成功,index.php 也被删除。我面临的问题是我无法通过example.com/assets/sample.png 打开sample.png,很明显这是因为RewriteRule ^(.*)$ ./sub_webroot/index.php?$1 [L] 行。我无法下定决心如何访问assets 目录并保持框架像现在一样成功运行。任何想法如何更改 .htaccess 以满足我的需求?
【问题讨论】:
-
更好的主意,找一个更好的主人,godaddy是最糟糕的之一
标签: php apache .htaccess codeigniter