Удаление .php из URL-адреса Apache

Структура каталогов моего сайта следующая:

/var/www/html/wordpress/
/var/www/html/rail/

/wordpress/ - это мой сайт по умолчанию при доступе к www.example.com. Wordpress содержит .htaccess, автоматически созданный wp.

/rail/ - это псевдоним внутри apache sites-enabled, доступный по адресу www.example.com/rail.

Содержимое файла внутри /rail/ имеет расширение .php, но оно отображается в адресной строке, что мне не нужно для удобства пользователя. Хочу /rail/search/(future)/search/parameters/ Вместо /rail/search.php/future/search/parameters/

Я читал другие темы поддержки переполнения стека о наноинге .htaccess, но мой htaccess находится внутри wordpress. Мне нужно будет создать еще один .htaccess внутри / rail /?

Как лучше всего удалить файл .phpexension из файлов .php, чтобы моя структура URL была бесшовной, как wordpress, и не получал неудобный .php? Заранее спасибо.

У кого-нибудь есть какие-либо идеи? Спасибо

trainmania100 14.09.2018 13:37

Да, вы можете добавить свой код в .htaccess, созданный wordpress. Но вместо этого создайте другой файл .htaccess в каталоге rail.

Shameem Ahmed 14.09.2018 14:34
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
2
77
1

Ответы 1

В ваш файл VirtualHost (apache) внесено несколько изменений, в которых вы используете псевдоним.

DocumentRoot /var/www/html/wordpress
Alias /rail "/var/www/html/rail"
<Directory "/var/www/html/rail">
    Options Indexes FollowSymLinks
    AllowOverride All
    Order allow,deny
    allow from all
</Directory>

Используйте следующий код, чтобы удалить расширение .php из URL-адреса каталога /rail/, создав файл .htaccess в каталоге /rail/.

# Turn mod_rewrite on
RewriteEngine On
RewriteBase /rail/

# To externally redirect /dir/foo.php to /dir/foo
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.php [NC]
RewriteRule ^ %1 [R,L,NC]

## To internally redirect /dir/foo to /dir/foo.php
RewriteCond %{REQUEST_FILENAME}.php -f [NC]
RewriteRule ^ %{REQUEST_URI}.php [L]

Извините, но это не имеет никакого значения. Я создал файл .htaccess в / var / www / html / rail / с указанным выше и перезагрузил сервер / перезапустил службу apache2, а / rail / search приходит как 404 not found. Хотите решить эту проблему и при необходимости готовы предоставить root-доступ к серверу?

trainmania100 14.09.2018 14:49

Да, вы можете отправить его по электронной почте на мой id [email protected]

Shameem Ahmed 14.09.2018 14:56

Спасибо, я отправил данные для входа по электронной почте, дайте мне знать, если вы не получили, и я отправлю их повторно.

trainmania100 14.09.2018 16:18

Привет, ты нашел решение своего вопроса. И я не получил от вас письма.

Shameem Ahmed 18.09.2018 06:44

Нет, я еще не нашел решения. Я отправлю письмо еще раз, так как оно могло попасть в спам :)

trainmania100 18.09.2018 12:35

Другие вопросы по теме