Я знаю, что есть много таких вопросов, и я попробовал их все, но ни один, кажется, не работает.
Пользовательские каталоги настроены, и поэтому я могу открыть localhost/~h22
(h22 это имя пользователя)
Http: //localhost/~h22/slim/index.php/hello/Megh работает но HTTP: // локальный / ~ А22 / тонкий / привет / Megh не работает выдача 404 не найдена ошибка
Точная ошибка в браузере
Not Found
The requested URL /home/h22/public_html/slim/index.php was not found on this server.
.htaccess
файл разбирается как запись бессмысленного в файл выдает внутреннюю ошибку сервера.
Мой код находится в
/home/h22/public_html/slim
├── composer.json
├── composer.lock
├── .htaccess
├── index.php
└── vendor
...
index.php:
<?php
require 'vendor/autoload.php';
$app = new \Slim\Slim();
$app->get('/hello/:name', function ($name) {
echo "Hello, " . $name;
});
$app->run();
?>
.Htaccess:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [QSA,L]
/etc/httpd/conf.d/slim.conf:
<Directory "/home/h22/public_html/slim">
AllowOverride All
Require all granted
</Directory>
Хорошо, я решил это.
Здесь нужно добавить строку
RewriteBase /~h22/slim/
после RewriteEngine On
Так что в любом другом проекте, если ваш URL localhost/abcd
,
тебе нужно написать RewriteBase /abcd
Других решений пока нет …