我有一个关于如何使用laravel livewire的问题,因为我有自己的理由不使用PHP artisan serve,Nginx,vhosts或任何PHP serve。只是像普通的原始PHP一样使用.htaccess正常访问项目(仅用于开发阶段)。
首先,我的laravel设置,我使用的是Laravel 8,我使用的访问laravel项目的方式是使用.htaccess,而不是PHP artisan serve,如下所示:
<IfModule !mod_rewrite.c>
deny from all
</IfModule>
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_URI} /$
RewriteRule ^ %{REQUEST_URI}index.php [L,R=301]
RewriteCond %{REQUEST_URI} $
RewriteRule ^(.*)$ public/$1 [L,QSA]
<Files .env>
Order allow,deny
deny from all
</Files>
</IfModule>
这样,我就可以访问我的项目,URL如下所示
http://localhost/Laravel/v8/suhv2livewire/public/index.php/login
所有的工作都很好,直到我安装livewire下一个。安装是好的,livewire被检测到。但当我试图提交一个表格,然后它给我要么这3个错误
Uncaught(in promise)SyntaxError:JSON中位置0处的意外标记〈
从我理解的这些错误的意思,它返回HTML而不是JSON应该是404在我的情况下(只是我的假设)
404 Not Found
此路由不支持GET方法。支持的方法:POST。
通过使用PHP artisan serve,它的工作没有任何问题和零配置。然而,没有PHP artisan服务,它成为一个问题和令人头痛的我。我阅读了有关asset_url的文档,并尝试更改,例如:
'asset_url' => 'http://localhost/Laravel/v8/suhv2livewire'
但仍然不工作,并得到任何3个错误,我上面显示。
我在StackOverflow上发现了一个类似的问题,但没有工作,其他人说关于Nginx等等。我不希望这样。
如果你们找到任何解决方案,请帮助。如果我能像使用其他javascript文件一样使用livewire,那就更好了。
require('livewire')
像阿尔卑斯山。
让我恼火的是,我不知道我的.htaccess,livewire asset_url或任何其他部分是真实的的问题。
谢谢你的帮助。
2条答案
按热度按时间zkure5ic1#
单位:
config/livewire.php
然后在
livewire
资产将取决于.env
在APP_URL
所以你需要在
.env
中配置你的url注意:此更改将在运行
php artisan config:clear
后生效mnowg1ta2#
在这里,您可以找到一个简单的方法来解决这个问题。您可以在这里找到一个简单的方法来解决这个问题。您可以在这里找到一个简单的方法来解决这个问题。