Назад | Перейти на главную страницу

Входной файл не указан - Усадьба, бродяга

Не указан входной файл.

это сообщение об ошибке, отображаемое в браузере.

Я слышал, вы говорите: «Входной файл не указан» означает, что вам нужно проверить сопоставление папок в Homestead.yaml файл, ну

C:\Users\Andy\Homestead\Homestead.yaml

---
ip: "192.168.10.10"
memory: 2048
cpus: 1
provider: virtualbox

authorize: ~/Homestead/.ssh/id_rsa.pub

keys:
 - ~/Homestead/.ssh/id_rsa

folders:
 - map: ~/Code
   to: /home/vagrant/Code

sites:
 - map: test.local
   to: ~/Code/test.local

databases:
 - homestead

Мой Homestead.yaml файл отформатирован правильно, т.е. нет табуляции, только пробелы и каталоги отображаются правильно.

Мой проект для начала очень прост:

C:\Users\Andy\Code\test.local\index.php

<?php phpinfo(); ?>

На ВМ:

vagrant@homestead:~$ ls -l /home/vagrant/Code/
drwxrwxrwx 1 vagrant vagrant 0 Apr 14 09:37 test.local

Так ясно, что он существует

Файл моих хостов находится на месте и сопоставлен с правильным IP-адресом

192.168.10.10       test.local

ВМ успешно загружается:

$ vagrant reload --provision
...
 homestead-7: SSH username: vagrant
 homestead-7: SSH auth method: private key
 ==> homestead-7: Machine booted and ready!
 ==> homestead-7: Checking for guest additions in VM...
 ==> homestead-7: Setting hostname...
...
 homestead-7: Running: script: Creating Certificate: test.local
 ==> homestead-7: Running provisioner: shell...
 homestead-7: Running: script: Creating Site: test.local
 ==> homestead-7: Running provisioner: shell...
 homestead-7: Running: script: Restarting Nginx
...

я пробовал

$ vagrant reload --provision

Что же тогда может быть? Несмотря ни на что, я получаю

Не указан входной файл.

Изменить: добавление

rewrite ^/index\.php/(.*)$ /$1 permanent;
location / {
 index index.php;

к /etc/nginx/sites-enabled/test.local и перезапустив сервер nginx, я теперь получаю в браузере сообщение 404 Not Found, я думаю, это прогресс?

Глядя на журнал ошибок:

2017/04/17 12:15:00 [error] 3538#3538: *1 "/usr/share/nginx/~/Code/test.local/index.php" is not found (2: No such file or directory), client: 192.168.10.1, server: test.local, request: "GET / HTTP/1.1", host: "test.local"

Очевидно, что указанный выше путь выглядит ошибочным. Как мой Homestead.yaml файл подключен к /usr/share/nginx/... то есть как определить правильный путь?

В конце концов мы добрались до цели. С участием:

sites:
 - map: test.local
   to: /home/vagrant/Code/test.local

и vagrant reload --provision мы попали в index.php файл успешно.

Спасибо

Следует проверить журнал доступа Nginx и C:\Users\Andy\Code\test.local\index.php не содержит ссылки на homestead.yaml.

Это вопросы и ответы объясняет, как решить проблему. Убедитесь, что конфигурация Nginx содержит ссылку на файл php:

rewrite ^/index\.php/(.*)$ /$1 permanent;
location / {
    index index.php;
    try_files $uri $uri/ /index.php$args;
}