2016-11-20 78 views
1

下午好,阿帕奇 - 404没有找到

我在阐述一个项目,并且我已经用ubuntu16.04在virtualbox中安装了php,mysql,apache2。我在本地工作,我已经安装了laravel 5.3,我正在运行一个API并创建了一个新的虚拟主机,并放置了DocumentRoot my_folder/publicServerName name_virtual_host。然后我去我的主机文件,并放置一个新的行:127.0.0.1 name_virtual_host。当我把我的浏览器http://name_virtual_host,出现laravel页面看做是应该,但是当我在http://name_virtual_host/api类型,还给:

未找到

所请求的网址/ API在此没有被发现服务器。

Apache/2.4.18(Ubuntu)服务器在name_virtual_host端口80它用于 显示JSON。

我的虚拟主机:

<VirtualHost *:80> 
     ServerAdmin [email protected] 
     ServerName name_virtual_host 
     DocumentRoot /var/www/my_folder/public 
     ErrorLog ${APACHE_LOG_DIR}/error.log 
     CustomLog ${APACHE_LOG_DIR}/access.log combined 
</VirtualHost> 

,如果我的文件夹里面我写的COMAND

PHP工匠服务

,放在网址:

name_virtual_host:8000/api

,这个工程。

我该如何解决这个问题? 我认为解决方案是创建文件.htaccess,但我应该把这个文件(.htaccess)放在什么?

谢谢。

回答

1

Laravel should come with a public/.htaccess file它将所有请求重定向到index.phpRewriteRule^index.php [L]部分)。

如果您没有此文件,请添加它。如果你已经有这个文件,请确保你的apache服务器上已启用mod_rewrite(并重新启动它)。

如果没有它,当您请求/api时,Apache将在您的DocumentRoot中查找名为api的文件。请求必须发送到index.php,从laravel documentation

公共目录包含index.php文件,这是所有请求进入应用程序的入口点。

+0

非常感谢,错过启用的mod_rewrite。谢谢 – Catarina