使用localhost/project/public/login
网址登录路由显示错误:
在此服务器上找不到请求的URL / test / public / login。 位于本地主机端口80的Apache / 2.4.34(Ubuntu)服务器
但是使用php artisan serve命令它可以很好地工作。
怎么了?
答案 0 :(得分:0)
已解决: 操作系统:ubuntu 18.10
/etc/apache2/apache2.conf
将此行添加到此apache2.conf文件中:
<Directory /var/www/html/> AllowOverride all </Directory>
答案 1 :(得分:0)
创建.env文件并运行:
php artisan key:generate
创建.env文件并生成密钥后,运行以下代码:
php artisan cache:clear
php artisan config:clear
此后,如果遇到问题,可以检查/var/log/apache/error.log
中的apache日志以获取有关错误的更多信息。如果mod_rewrite
中存在错误,请执行以下操作:
a2enmod rewrite
systemctl restart apache2
答案 2 :(得分:0)
您的本地主机无法正常工作的原因很多。 以下可能是原因之一:
1。确保/etc/apache2/sites-available/your-conf.conf文件中包含以下内容:
ServerName www.your-url.test
ServerAlias your-url.test
ServerAdmin webmaster@localhost
DocumentRoot /your-path/your-project/public
<Directory /your-path/your-project>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
您的PHP版本可能存在问题。在我们的机器中,有两个php:
1. For CLI(command line interface)
2. For apache server
您的laravel应用程序可能需要apache服务器中更高或更低版本的php。 要修复该问题,可以将apache服务器中的php版本更新为所需的版本,或者为您的项目设置fpm。然后您的本地主机将开始工作。
您的laravel应用程序中可能存在错误。 要检查该use命令: 须藤尾巴-f /var/log/apache2/error.log
点击此命令后,您将看到laravel应用程序抛出的错误。
但是,由于您的laravel应用程序使用serve命令运行良好,因此您遇到的最可能的问题是由于CLI和apache服务器(前端)中的PHP版本不同。 因此,您应该设置fpm或升级或降级apache服务器php版本。
我遇到了同样的问题,并通过为我的项目设置fpm来解决它。 谢谢
答案 3 :(得分:0)
此情况中最常见的错误与无法在Apache中执行mod_rewrite做到这一点有关:
sudo a2enmod rewrite
systemctl restart apache2