请问laravel9 如何在局域网中被访问?

1. 运行环境#

Linux i7-6700HQ 8GBRAM

1). 当前使用的 Laravel 版本?#

9.52.15
//: <> (使用 php artisan --version 命令查看)

2). 当前使用的 php/php-fpm 版本?#

PHP 版本:
8.0.28
//: <> (使用 php --version 命令查看 php 版本)

php-fpm 版本:
master
//: <> (代码里 phpinfo 函数,然后页面访问查看 php-fpm 版本)
//: <> (如不方便使用 phpinfo 函数 ,使用 ps aux | grep php-fpm.conf 命令查)
//: <> ( 看 php-fpm 版本。如有多个,请以 nginx 站点配置为准。)

3). 当前系统#

openEuler22.03LTS
//: <> (期待数值 Windows 10 / Ubuntu 20.4 / CentOS 8)

4). 业务环境#

开发环境
//: <> (期待信息 开发环境生产环境)
//: <> (是否使用负载均衡?请提供相关信息)

5). 相关软件版本#

nginx 1.21.5
//: <> (提供相关软件的版本,如 Nginx 、MySQL、MongoDB 等)

2. 问题描述?#

laravel9 框架默认使用 8000 端口,Nginx 默认使用 80 端口
在防火墙里两个端口都开放了
可是在局域网中只能访问 Nginx 的服务器 无法访问 laravel 框架
求教

请问laravel9 如何在局域网中被访问?

请问laravel9 如何在局域网中被访问?

请问laravel9 如何在局域网中被访问?

请问laravel9 如何在局域网中被访问?

3. 您期望得到的结果?#

4. 您实际得到的结果?#

《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
最佳答案

file 把 php 的配置打开,然后改成

location ~ \.php$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }

加 laravel 的路由重写

location / {
            try_files $uri $uri/ /index.php?$query_string;
        }

把 root 指向项目入口文件目录

1年前 评论
LMZ-ZH (楼主) 1年前
LMZ-ZH (楼主) 1年前
小猪蹄子 (作者) 1年前
LMZ-ZH (楼主) 1年前
LMZ-ZH (楼主) 1年前
LMZ-ZH (楼主) 1年前
小猪蹄子 (作者) 1年前
随波逐流 1年前
LMZ-ZH (楼主) 1年前
小猪蹄子 (作者) 1年前
LMZ-ZH (楼主) 1年前
小猪蹄子 (作者) 1年前
LMZ-ZH (楼主) 1年前
讨论数量: 52
随波逐流

使用 Octane(加速引擎) ,搭建 http 服务

1年前 评论
LMZ-ZH (楼主) 1年前

”laravel9 框架默认使用 8000 端口 “ ?

php artisan serve 显示的 127.0.0.1:8000 , 于是你认为默认端口是 8000?

但是要在局域网内访问, 需要通过 nginx 服务器的 IP 吧。 和这个 8000 没有任何关系!!!

你 nginx 没配置好吧

1年前 评论
LMZ-ZH (楼主) 1年前
hefengbao (作者) 1年前
LMZ-ZH (楼主) 1年前
hefengbao (作者) 1年前
LMZ-ZH (楼主) 1年前
LMZ-ZH (楼主) 1年前
hefengbao (作者) 1年前
hefengbao (作者) 1年前
LMZ-ZH (楼主) 1年前
ShiKi

nginx 中的 server_name 设置成局域网 ip 就可以了,记得关防火墙之类的.

1年前 评论
LMZ-ZH (楼主) 1年前
ShiKi (作者) 1年前
LMZ-ZH (楼主) 1年前
ShiKi (作者) 1年前
LMZ-ZH (楼主) 1年前
ShiKi (作者) 1年前
LMZ-ZH (楼主) 1年前
LMZ-ZH (楼主) 1年前
ShiKi (作者) 1年前
LMZ-ZH (楼主) 1年前
LMZ-ZH (楼主) 1年前

php artisan serve 启动的话,默认是 127.0.0.1,所以只能本机访问。改成 php artisan serve --host 0.0.0.0 --port 8000

1年前 评论
LMZ-ZH (楼主) 1年前
LMZ-ZH (楼主) 1年前
随波逐流
php artisan serve

仅适用于 开发环境 或者 临时调试 , 不能用做 生产环境 , 切记!!

1年前 评论
LMZ-ZH (楼主) 1年前
随波逐流 (作者) 1年前
LMZ-ZH (楼主) 1年前
sanders 1年前
LMZ-ZH (楼主) 1年前
LMZ-ZH (楼主) 1年前

楼上说的 server 是支持局域网访问的, valet 是内置解析

1年前 评论

你运行下 nginx -t , 检查下配置文件

应该是有问题的,有 2 个 server_name _; _ 是默认站点, 不可能有 2 个的哦

1年前 评论

你 80 端口的配置把 php 的部分都注释掉了,当然不行

1年前 评论

file 把 php 的配置打开,然后改成

location ~ \.php$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }

加 laravel 的路由重写

location / {
            try_files $uri $uri/ /index.php?$query_string;
        }

把 root 指向项目入口文件目录

1年前 评论
LMZ-ZH (楼主) 1年前
LMZ-ZH (楼主) 1年前
小猪蹄子 (作者) 1年前
LMZ-ZH (楼主) 1年前
LMZ-ZH (楼主) 1年前
LMZ-ZH (楼主) 1年前
小猪蹄子 (作者) 1年前
随波逐流 1年前
LMZ-ZH (楼主) 1年前
小猪蹄子 (作者) 1年前
LMZ-ZH (楼主) 1年前
小猪蹄子 (作者) 1年前
LMZ-ZH (楼主) 1年前