Правило переписывания Apache не работает (Ubuntu 16.04) - PullRequest
0 голосов
/ 13 мая 2018

Я использую следующий .htaccess файл в Ubuntu 16.04 с Apache 2.

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php [L]

Я использую эту конфигурацию, чтобы этот маршрутизатор PHP мог работать на моем веб-сайте.

Однако ни один из определенных маршрутов не работает корректно на моем сервере Linux (404), хотя они отлично работают на моей локальной установке Windows. Это заставляет меня думать, что htaccess не интерпретируется должным образом.

Что я сделал:

  • Перезапущенный apache (несколько раз).
  • Включен мод перезаписи с sudo a2enmod rewrite
  • В настройках сайта /etc/apache2/sites-available/website.com.conf, добавлено:

    <Directory "/var/www/website.com/public_html">
    AllowOverride All
    </Directory>
    

    под моим виртуальным хостом

1 Ответ

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

Я обращался к определенным маршрутам напрямую через браузер.(поэтому website.com/api/v1/login/) Однако эти маршруты принимали только запросы POST, и поэтому я получал код ошибки 404.

...