Так что сейчас я просто пытаюсь преобразовать что-то вроде
https://gregorj.org/post?id=26
в
https://gregorj.org/post/26
Все, что я нашел (также в stackoverflow), подсказывает мне поставить это в .htaccess:
RewriteEngine On
RewriteRule ^post/([^/.]+)?$ /post?id=$1 [L]
Но это не работает в моем случае. Я предполагаю, что это может быть только потому, что у меня есть куча других вещей в моем .htaccess, которые я положил туда, чтобы скрыть. php и. html расширения назад, когда я запускал сайт (именно поэтому я и написал / post? id = $ 1, а не /post.php?id=$1 в .htaccess - но я попробовал оба на всякий случай:).
Вот мой .htaccess в его нынешнем виде:
Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /
# Force HTTPS
RewriteCond %{HTTPS} !=on
RewriteRule ^/?(.*) https://%{HTTP_HOST}/$1 [R,L]
# Prevent POST requests from getting redirected
RewriteCond %{REQUEST_METHOD} !POST
# 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]
# To externally redirect /dir/foo.html to /dir/foo
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.html [NC]
RewriteRule ^ %1 [R,L,NC]
## To internally redirect /dir/foo to /dir/foo.php
RewriteCond %{REQUEST_FILENAME}.html -f [NC]
RewriteRule ^ %{REQUEST_URI}.html [L]
Есть какие-нибудь идеи относительно того, что я могу сделать, чтобы получить более симпатичные ссылки?