开发者社区> 问答> 正文

云虚拟主机没有根目录设置,怎么部署laravel项目?

希望官方能出个教程,谢谢啦


在服务器里,我是直接将网站根目录定位到laravel/public,然后打开web服务器的rewrite模块就可以用了。
现在在云虚拟主机里,不能设置网站根目录,访问laravel根目录显示403禁止,在域名后添加/public/index.php后出现了欢迎页,但继续添加路径,路由解析失效(例如访问h ttp://ip/public/index.php/test,显示找不到页面),请问如何能正确的在云虚拟主机上使用这个框架?


以下是一些尝试,均没有解决好这个问题
经过搜索,尝试过在项目根目录添加一个/public/index.php的链接文件,服务器打开后,没有报403禁止,但是显示空白,没有欢迎页出来

展开
收起
pines 2015-09-05 13:54:01 26488 0
8 条回答
写回答
取消 提交回答
  • Re云虚拟主机没有根目录设置,怎么部署laravel项目?
    换个思路来解决问题: 从 laravel 本身解决. jiang index.php 移动到网站跟目录 htdocs 下即可, 详细参见
    [font=-apple-system, "]空间的根目录定死了,但是laravel的index一定要放public,怎么办
    网址:
    segmentfault.com/q/1010000004597668
    2018-08-17 11:55:43
    赞同 展开评论 打赏
  • 先收藏,等更新
    2016-11-15 20:13:33
    赞同 展开评论 打赏
  • 回 8楼麦乐淘的帖子
    用这个可以进到public/index.php,但是网页显示空白
    2016-11-06 07:27:42
    赞同 展开评论 打赏
  • Re云虚拟主机没有根目录设置,怎么部署laravel项目?
    在根目录建立 .htaccess 文件,里面代码为,

    <IfModule mod_rewrite.c>
        RewriteEngine on
        RewriteCond %{REQUEST_URI} !^public
        RewriteRule ^(.*)$ laravel-v5.1.4/public/$1 [L]
    </IfModule>

    laravel-v5.1.4 改成你自己的laravel目录名字
    2015-09-19 15:57:35
    赞同 展开评论 打赏
  • 码农|Coder| Pythonista
    您好
    您可以使用.htaccess来限定
    2015-09-08 08:31:15
    赞同 展开评论 打赏
  • 2015-09-06 19:47:29
    赞同 展开评论 打赏
  • 关注云生态,专注云服务。
    阿里云云虚机的根目录是htdocs

    -------------------------

    回 3楼(pines) 的帖子
    看了下介绍,亲您所说的laravel安装和环境配置是有特殊要求的
    目前还没有见过正确配置阿里云虚机使用laravel的例子,不过,亲您可以深度探索一下,期待您来出这一个教程!
    2015-09-05 23:24:33
    赞同 展开评论 打赏
  • Re云虚拟主机没有根目录设置,怎么部署laravel项目?
    最新搜到一个解决方式,下面引用回答:

    需要正面面对这个问题——确实需要把域名绑定到public文件夹之下。但这个绑定不需要非得“真正”绑定上,用符号链接来变通实现也是可以的。(即绑定位置如果不能改变,就把绑定位置换成一个指向你真正所需位置的符号链接)

    对于常见的Linux平台PHP空间:

    对于DA,实质上没有主域名的概念,各个域名都绑定在~/domains/yourdomain.com/public_html
    对于cPanel,主域名固定绑定在~/public_html
    cPanel的Addon Domains可以自定义绑定位置(问题自然解决)
    所以对于以上的情况1和2,你可以把laravel安装在一个其他的地方,然后把原来作为绑定位置的文件夹删除,用符号链接取代即可。创建符号链接可以使用php的symlink()函数。




    现在我的问题是这个symlink()函数在哪里用?和我帖子里说的那样建立符号链接有什么区别?

    -------------------------

    回2楼宝商云服务的帖子
    恩,是这个。

    但laravel框架需要根目录不为整个项目,例如:项目test有所有源码文件,然后这个框架需要将WEB浏览器设置根目录为test/public才能正常使用。

    服务起上可以轻松做到这样设置,现在问题就是云虚拟主机不知道怎么弄

    -------------------------

    回6楼西秦的帖子
    你好,好像是看过用这个解决,但大多数帖子教程里写的太笼统了,有正式一点的教程吗?望推荐,谢谢。
    2015-09-05 14:46:04
    赞同 展开评论 打赏
滑动查看更多
问答排行榜
最热
最新

相关电子书

更多
基于英特尔 SSD 的虚拟机缓存解决SSD 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载