我的htdocs文件夹中有多个laravel项目:
htdocs/laravelProjectA和htdocs/laravelProjectB
因此,如果我想访问一个laravelProjectA的laravel路径,相应的url将是:localhost/laravelProjectA/public/myRoute
问题是,所有的laravel文件和文件夹都在htdocs文件夹中,因此Web可以访问这些文件和文件夹,这意味着我可以输入,例如:localhost/laravelProjectA/.env并查看所有合理的数据。
如何使用Apache对每个项目隐藏公共文件夹之外的所有文件和文件夹?因此,localhost/laravelProjetA/.env,localhost/laravelProjectA/.gitignore,和对其他文件的每个请求都会导致404错误,或类似的错误。
我知道我只能将公共文件夹保留在htdocs文件夹中,然后将其他文件和文件夹移到其他地方,然后更改public/index.php文件,但我希望使用apache隐藏这些文件,以便将每个项目放在一个目录中。
发布于 2017-07-19 04:32:05
您必须编辑/etc/apache2/apache2.conf
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
至
<Directory /var/www/>
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
服务器将停止显示文件。
https://stackoverflow.com/questions/45180995
复制相似问题