У меня есть веб-сервер (капля) в DigitalOcean. Эта капля работает на Ubuntu 16.04. Я правильно установил Laravel, так что могу использовать "новое имя приложения laravel" и "php artisan ..."внутри новой папки.
Я установил Nginx в качестве предпочтительного веб-сервера.
Я создал проект Laravel в / var / www / folder1 / appname / а в файле конфигурации сервера nginx у меня есть это:
/ и т.д. / nginx / сайты-доступные / имя приложения:
server {
listen 80;
listen [::]:80;
server_name mydomain.de www.mydomain.de
root /var/www/folder1/appname/public;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php?$is_args$args;
}
# I have tried it with and without this part
location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
Я связал этот файл с системой / и т.д. / nginx / сайты с поддержкой.
Когда я иду в mydomain.de все, что я вижу, это либо страница nginx по умолчанию, либо страница apache по умолчанию.
Я "chown'nd"'все ниже / var / www / в мою учетную запись и группу.
Когда я последовал этот учебник и загрузил проект Quickstart с Github, он сработал.
Я делаю что-то неправильно?
P.S. Сейчас я использую php 7.1 и 7.0, когда пробовал это руководство. Но мне пришлось обновить scince composer
Если вы получаете страницу nginx по умолчанию, она не берет заголовок хоста и, следовательно, использует блок сервера по умолчанию.
Я заметил, что в конце этой строки отсутствует точка с запятой:
имя_сервера mydomain.de www.mydomain.de
Если это так на вашем реальном сервере, это объяснит проблему. Я считаю, что результат nginx -t
сообщит об ошибке.