#php #laravel #url #routes
#php #laravel #url #маршруты
Вопрос:
Я создал страницу about в Laravel и указал на нее маршруты, но проблема в том, что когда я перехожу к URL: http://localhost:8080/bsms/public/about
это не работает, и там написано
К сожалению, страница, которую вы ищете, не найдена.
Тем не менее, http://localhost:8080/bsms/public/index.php/about
работает нормально. Я хочу, чтобы мой URL был свободен от индекса!
Комментарии:
1. Что вы используете для сервера сайта, т.е. MAMP, WAMP, XAMPP, встроенный сервер php и т.д.?
2. @RossWilson Я использую xampp
3. У вас должна быть установлена ваша общая папка в качестве веб-корня для проекта. Взгляните на 5balloons.info/install-laravel-5-7-xampp-windows
4. можете ли вы поделиться структурой каталогов
Ответ №1:
перейдите к /public/index.php и добавить код blow после define('LARAVEL_START', microtime(true));
/*
* redirecting addresses with /index.php/
* */
$url = (isset($_SERVER['HTTPS']) amp;amp; $_SERVER['HTTPS'] === 'on' ? 'https' : 'http') . '://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
if (strpos($url, '/index.php')) {
$url = str_replace('/index.php', '', $url);
header('Location: ' . $url);
die();
}
Ответ №2:
Вы находитесь на localhost?
Попробуйте добавить эту строку в ваш файл .htaccess в вашей общей папке:
RewriteBase /
Итак, это должно быть так:
<IfModule mod_rewrite.c>
RewriteBase /
<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>
Если это не сработает, попробуйте предоставить более подробную информацию о среде вашего проекта.
Кроме того, URL должен указывать на что-то вроде этого: bsms.test или подобное.
Комментарии:
1. Хорошо, откройте консоль и введите:
php artisan serve
Укажите на указанный URL, обычно: 127.0.0.1:8000
Ответ №3:
Вы должны иметь возможность получить доступ к своей странице «О программе» по этому URLhttp://localhost:8080/bsms/about (принимая во внимание, что ваши файлы просмотра находятся в папке ресурсов, а не в общей папке).
Попробуйте использовать эти команды
php artisan config:clear
php artisan cache:clear
composer dump-autoload
И дайте нам знать, как это происходит.