如何安装LARAVEL 5

时间:2016-06-21 12:32:06

标签: php laravel laravel-5 web-hosting

如何在hostinger服务器/任何其他免费托管服务器上安装laravel。我在localhost中学习并完成了工作代码。但我想在真正的服务器上运行它。

  

Laravel版本:5

     

PHP版本服务器:5.5.35

1)我已将完整的laravel代码复制到" / home /<用户名> /"

2)将/ home // laravel / public中的文件复制到/ home /<用户名> / public_html

但它显示错误。

  

致命错误:require():无法打开所需的' / home // public_html /../ bootstrap / autoload.php'第22行/home//public_html/index.php中的(include_path ='。:/ opt / php-5.5 / pear')

答案: 使用Heroku Server作为@lciamp在评论中建议

澄清:

请建议我支持Laravel Framework的付费服务器列表

2 个答案:

答案 0 :(得分:0)

将代码复制到托管服务器后,需要安装运行Laravel所需的composer个软件包。您可以使用composer install执行此操作(假设已安装composer)。否则,您需要先安装composer

答案 1 :(得分:0)

Since you have SSH access这样做:

文件系统

  1. SSH进入服务器
  2. 将目录更改为项目根目录
    • cd /home/< username >
  3. 删除public_html文件夹
    • rm -rf public_html
  4. 创建从publicpublic_html的符号链接
    • ln -s /home/< username >/public /home/< username >/public_html
  5. 安装Laravel依赖项
    • composer install
  6. 更改权限
    • chmod -R 755 *
    • chmod -R 777 storage/ bootstrap/cache/
  7. 清单

    1. 确保上传的环境文件正确无误。
    2. 如果服务器是Apache,请确保上传了.htaccess个文件。
    3. 您可能上传了所有资产,如果是这样,您将不需要做bower或npm。
    4. 重新启动服务器。
    5. **在有限的Shell环境下

      1. 在本地安装Laravel依赖项,并将vendor文件夹与其他所有内容一起上传。
      2. 而不是将整个Laravel应用上传到/home/< username >/,而不是将其上传到/home/< username >/public_html
      3. 修改您的/home/< username >/public_html/.htaccess,将所有请求重定向到public子文件夹。

        # /home/< username >/public_html/.htaccess
        
        <IfModule mod_rewrite.c>
            <IfModule mod_negotiation.c>
                Options -MultiViews
            </IfModule>
        
            RewriteEngine On
        
            # Redirect All Requests To The Subfolder
            RewriteRule ^ /public
        
        </IfModule>
        
      4. 确保您拥有正确的/home/< username >/public_html/public/.htaccessGitHub)。

        # /home/< username >/public_html/public/.htaccess
        
        <IfModule mod_rewrite.c>
            <IfModule mod_negotiation.c>
                Options -MultiViews
            </IfModule>
        
            RewriteEngine On
        
            # Redirect Trailing Slashes If Not A Folder...
            RewriteCond %{REQUEST_FILENAME} !-d
            RewriteRule ^(.*)/$ /$1 [L,R=301]
        
            # Handle Front Controller...
            RewriteCond %{REQUEST_FILENAME} !-d
            RewriteCond %{REQUEST_FILENAME} !-f
            RewriteRule ^ index.php [L]
        
            # Handle Authorization Header
            RewriteCond %{HTTP:Authorization} .
            RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
        </IfModule>