如何保护我的laravel Rest应用程序



你好,我用laravel和passport开发了一个rest api。。我如何知道我的应用程序是否安全?我认为api是安全的,因为我使用passport中的令牌,并且对于每个请求,我都必须发送我的令牌来访问数据。我问这个问题是因为我发现,如果有人键入url,比如myserver/env,他可以看到包含所有数据的env文件(数据库连接(。从htaccess我阻止了它,但我在这里问我是否必须做更多的事情来保护它。谢谢你的时间!!

首先,您不应该让每个人都可以读取您的.env文件。您应该限制访问权限,以便只有服务器才能执行该文件0111

其次,在您的.htaccess中添加以下内容:

<Files .env>
Order allow,deny
Deny from all
</Files>

第三,如何通过URL访问文件?公用文件夹应该是映射的目录。

参考:如何使用文件权限保护laravel中的.env文件?

Laravel有一个名为public的文件夹,它是唯一需要指向虚拟主机的文件夹。其他文件夹不应该是公共的,这就是包括.env文件在内的配置文件的保密方式。

Nginx配置文件示例:

server {
listen 80;
server_name example.com;
root /var/www/example.com/my_laravel_app/public; # Here we pointed the host example.com to the laravel's public folder
index index.php;
...

关于部署Laravel应用程序的更多信息:

https://laravel.com/docs/7.x/deployment

以下是Laracon EU关于保护Laravel应用程序的精彩演讲:

https://www.youtube.com/watch?v=kKGGVGiq2y8

最新更新