如何将YII项目复制到另一台服务器?

时间:2016-05-09 15:10:57

标签: yii

我有一个Yii网站,我想将它复制到另一台机器上的另一台服务器,我将文件放在我的新网页目录中并尝试访问它并收到错误消息“192.168.182.129页面无效, 192.168.182.129目前无法处理此请求.HTTP ERROR 500“我在我的新网络服务器中创建了一个新项目,我能够访问它,所以我尝试将旧项目中的后端文件夹复制到新项目我创建但我得到了相同的错误,任何帮助如何复制它感谢

1 个答案:

答案 0 :(得分:0)

基本申请

  1. 重命名webroot
  2. 重命名webroot 使用FTP或其他方式连接到共享主机。您可能会看到以下内容:

    config
    logs
    www
    

    在上面,www是您的webserver webroot目录。它的名称可能不同。常用名称是:www,htdocs和public_html。

    我们的基本项目模板中的webroot名为web。在将应用程序上传到您的网络服务器之前,请将您的本地webroot重命名为与您的服务器匹配,即从Web到www,public_html或您托管webroot的任何名称。

    1. FTP根目录可写
    2.   

      如果您可以写入根级目录,即config,logs和www所在的位置,则将资产,命令等上传到根级目录。

      1. 为网络服务器添加额外内容
      2. 如果您的网络服务器是Apache,您需要将以下内容的.htaccess文件添加到web(或public_html或其他)(index.php文件所在的位置):

        Options +FollowSymLinks
        IndexIgnore */*
        
        RewriteEngine on
        
        # if a directory or a file exists, use it directly
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_FILENAME} !-d
        
        # otherwise forward it to index.php
        RewriteRule . index.php
        
        1. 检查要求
        2. 要运行Yii,您的网络服务器必须符合其要求。最低要求是PHP 5.4。为了检查要求,请将根目录中的requirements.php复制到webroot目录中,然后使用http://example.com/requirements.php URL通过浏览器运行它。不要忘记之后删除文件。

          提前申请

          将高级应用程序部署到共享主机比基本应用程序有点棘手,因为它有两个webroots,共享主机Web服务器不支持。我们需要调整目录结构。

          1. 将条目脚本移动到单个webroot
          2. 首先,我们需要一个webroot目录。创建一个新目录并将其命名为与您的托管webroot名称相匹配,如上面重命名webroot中所述,例如www或public_html等。然后创建以下结构,其中www是您刚刚创建的托管webroot目录:

            www
                admin
            backend
            common
            console
            environments
            frontend
            ...
            

            www 将是我们的前端目录,因此请将frontend / web的内容移入其中。将后端/ web的内容移动到www / admin。在每种情况下,您都需要调整index.php和index-test.php中的路径。

            1. 单独的会话和Cookie
            2. 最初后端和前端旨在运行在不同的域。当我们将它们全部移动到同一个域时,前端和后端将共享相同的cookie,从而产生冲突。它命令修复它,调整后端应用程序配置backend / config / main.php如下:

              'components' => [
                 'request' => [
                  'csrfParam' => '_backendCSRF',
                  'csrfCookie' => [
                      'httpOnly' => true,
                      'path' => '/admin',
                  ],
                 ],
                'user' => [
                  'identityCookie' => [
                      'name' => '_backendIdentity',
                      'path' => '/admin',
                      'httpOnly' => true,
                  ],
                 ],
                'session' => [
                  'name' => 'BACKENDSESSID',
                  'cookieParams' => [
                      'path' => '/admin',
                  ],
                 ],
              ],