我已阅读Yii2官方网站上的文档,将yii2部署到共享主机中:http://www.yiiframework.com/doc-2.0/guide-tutorial-shared-hosting.html,以及有关此问题的讨论:stackoverflow。
所以,我决定使用sftp上传yii2文件夹。 这是我的共享主机中的目录列表。
access-logs
etc
logs
public_ftp
public_html
ssl
www (this is a link folder to public_html)
你知道,因为共享主机可以保留域直到5个域, 是否可以将yii2basic文件夹上传到public_html文件夹?
结果如下:
access-logs
etc
logs
public_ftp
public_html
-basic
- bunch of yii folders here
ssl
www (this is a link folder to public_html)
因为现在,如果我想访问我的网页,我必须这样写:mydomain.com/basic/public_html/index.php
我需要这样:
mydomain.com/index.php
请指导我。
答案 0 :(得分:1)
是的,您可以将其上传到public_html
文件夹中,但我现在使用yii2基本应用程序遇到的唯一问题是漂亮的URL,您可以克隆或上传public_html
文件夹中的整个内容,我所做的只是如下区别只是我有一个web
文件夹而不是www
目录结构
public_html
assets
commands
config
controller
mail
migrations
models
runtime
tests
vendor
views
web
的public_html / htaccess的
<IfModule mod_rewrite.c>
Options +SymLinksIfOwnerMatch
RewriteEngine On
</IfModule>
<IfModule mod_rewrite.c>
RewriteCond %{REQUEST_URI} ^/.*
RewriteRule ^(.*)$ web/$1 [L]
RewriteCond %{REQUEST_URI} !^/web/
RewriteCond %{REQUEST_FILENAME} !-f [OR]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^.*$ web/index.php
</IfModule>
的public_html /网络/ htaccess的
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?/$1 [L]
这有效,但在网址中显示/web/index.php?r=site/index
,一旦我在配置文件prettyUrl
中打开urlManager
,它就会显示默认索引页面和我尝试的每个链接虽然地址栏中的URL是正确的并且urlManager正确地解析了规则,但是在主页视图中打开了,这就是我已经走了。
答案 1 :(得分:0)
如果您不介意根文件夹中的Yii 2文件夹,请将所有基本模板文件夹(if (textField == self.phoneField || textField == self.faxField) {
除外)和文件放在根文件夹中。然后将web
文件夹的内容放在web
文件夹中。
应该是这样的:
public_html