Laravel: все страницы, кроме индекса, не найдены - PullRequest
0 голосов
/ 09 мая 2018

Я только что развернул свое приложение на сервере AMI ec2 и, следуя некоторым учебникам, попал к одному, который объясняет, как изменять config / app.php, например:

/*
    |--------------------------------------------------------------------------
    | Application URL
    |--------------------------------------------------------------------------
    |
    | This URL is used by the console to properly generate URLs when using
    | the Artisan command line tool. You should set this to the root of
    | your application so that it is used when running Artisan tasks.
    |
    */

    'url' => env('APP_URL', 'http://52.67.251.19/'),

... и измените httpd.conf следующим образом:

# DocumentRoot: The directory out of which you will serve your
# documents. By default, all requests are taken from this directory, but
# symbolic links and aliases may be used to point to other locations.
# 
DocumentRoot "/var/www/html/nnid/public/"

# 
# Relax access to content within /var/www.
#
<Directory "/var/www/nnid/public/">
    AllowOverride None
    # Allow open access:
    Require all granted
</Directory>

Но все страницы, кроме целевой страницы, НЕ НАЙДЕНЫ. Есть намеки?

Ответы [ 2 ]

0 голосов
/ 15 мая 2018

РЕШИТЬ! Проблема была в httpd.conf в режиме ReWrite. Изменено на Все и работает как ветер!

0 голосов
/ 10 мая 2018

Убедитесь, что на вашем сервере включен mod_rewrite.

Также Laravel 5.6 поставляется с этим файлом .htaccess в общей папке.

<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews -Indexes
    </IfModule>

    RewriteEngine On

    # Handle Authorization Header
    RewriteCond %{HTTP:Authorization} .
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

    # Redirect Trailing Slashes If Not A Folder...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_URI} (.+)/$
    RewriteRule ^ %1 [L,R=301]

    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
</IfModule>

Просто убедитесь, что он соответствует вашему текущему.

...