我在Yii2上开发了一个基于VPS(Apache 2.4.23)的网站,结构如下:
user/app (all the sites files and directories)
user/public_html
在public_html中有指向目录和文件的链接,例如:
.htaccess (file folder)
admin (file folder)
assets (file folder)
css (file folder)
images (file folder)
index (php file)
psite有一个前端和后端,后端位于子域上,域中的前端(example.com和admin.example.com)
前端加载http和https都很好,而后端不加载资源(css和图像),后端的https重定向到我不想要的http。
在错误日志中,我看到一堆错误(太多列出所有错误),如下面的示例:
[access_compat:error] [pid] [client] AH01797:服务器拒绝客户端 配置:home / user / app / backend / web / index.php,referer http://admin.example.com/en/user/index
[access_compat:error] [pid] [client] AH01797:服务器拒绝客户端 配置:home / user / app / backend / web / index.php
[access_compat:error] [pid] [client] AH01797:服务器拒绝客户端 配置:home / user / app / backend / web / en
htaccess文件对于前端和后端是相同的,如下所示:
# use mod_rewrite for pretty URL support
RewriteEngine on
# If a directory or a file exists, use the request directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# Otherwise forward the request to index.php
RewriteRule . index.php [L]
# use index.php as index file
DirectoryIndex index.php
我也尝试过(通过托管支持建议)没有成功。
# use mod_rewrite for pretty URL support
RewriteEngine On
# enable symbolic links
Options +FollowSymLinks
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule . index.php [L]
# use index.php as index file
DirectoryIndex index.php
你能告诉我什么是错的,为什么前端工作正常,但后端不行?
答案 0 :(得分:0)
在cpanel设置中,子域只能从public_html下的目录中提供。