Laravel 5.5 如何将项目根目录设为一个二级目录?
0

想把项目根目录设为一个二级目录:http://sample.test/test/
尝试修改 .env 文件中的 APP_URL=http://sample.test/test,但是发现无效,项目依然只能通过 http://sample.test/ 访问。
想请问一下大家如何设置项目根目录的 URL 到一个指定的目录下?

《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
讨论数量: 6
overtrue

不是太理解为啥会有这样的需求?你可以考虑使用 web 服务器的虚拟目录来搞定

9个月前

@overtrue 服务器环境不允许,不能配置二级域名,因此只能在服务器 Web 根目录下面的二级目录里部署应用。

9个月前
overtrue

@6091 那很为难了

9个月前
Summer
location / {
        index index.php index.html;
    try_files $uri $uri/ /index.php?$query_string;
    }

    location ~ \.php$ {

    if ($request_uri ~ ^/laravel-tutorial(?:/(.*))?$) {
            root /data/www/laravel-tutorial/public;
        }

        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
        fastcgi_index index.php;
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_param PATH_INFO $fastcgi_path_info;
        #fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }
9个月前

@Summer 谢谢,不过现在还是出现了问题。
现在测试的情况是:

  • Laravel 项目 laravel-tutorial 放在 Web 根目录下,即 .../www/laravel-tutorial/
  • 已按照上面在 /etc/nginx/sites-available 下面的配置文件中配置了 Nginx。

尝试访问 http://mydomain.com/laravel-tutorial,返回 403。

尝试访问 http://mydomain.com/laravel-tutorial/public,输出 No input file specified.

9个月前

看看文件目录权限,是不是没有访问权限,感觉summer的配置应该没有问题。

9个月前

  • 请注意单词拼写,以及中英文排版,参考此页
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`, 更多语法请见这里 Markdown 语法
  • 支持表情,使用方法请见 Emoji 自动补全来咯,可用的 Emoji 请见 :metal: :point_right: Emoji 列表 :star: :sparkles:
  • 上传图片, 支持拖拽和剪切板黏贴上传, 格式限制 - jpg, png, gif
  • 发布框支持本地存储功能,会在内容变更时保存,「提交」按钮点击时清空
  请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!