Сделайте дружественный URL с двумя параметрами на PHP с Apache

Поэтому я здесь немного супа.

Мне нужно сделать дружественный URL.

Это URL-адрес, в который я ввожу значения поиска имя_проекта и версию

локальный: 8080 / demo_webpages_project / retrieval.html

Здесь я беру на себя представление значений

локальный: 8080 / demo_webpages_project / download.php project_name = QT и версия = 3.1.2

Я хочу, чтобы URL-адрес в следующей форме

локальный: 8080 / demo_webpages_project / загрузить / QT / 3.1.2

Я попытался сделать это с помощью .htaccess, но не нашел решения

Ниже приведен код для файла .htaccess.

<IfModule mod_rewrite.c> #Turn the engine on RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d #attempt1 #RewriteRule ^(.*)/$ download.php?project_name=$1&version=$1 #RewriteRule ^/(.*)$ download.php?version=$1 #attempt2 #RewriteRule ^(.*)/(.*)$ download.php?project_name=$1&version=$2 [L,NC,QSA] #RewriteRule ^(.*)$ download.php?version=$1 </IfModule> 

Я был бы очень благодарен, если бы кто-то мог мне помочь в этом. Это первый раз, когда я над чем-то работаю, и я потерялся.

благодаря

Имейте это .htaccess внутри /demo_webpages_project/ :

 Options -MultiViews RewriteEngine on RewriteBase /demo_webpages_project/ RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^([^/]+)/([^/]+)/?$ download.php?project_name=$1&version=$2 [L,QSA] 

Согласно этой статье вы хотите, чтобы mod_rewrite (помещенный в файл .htaccess), который выглядит примерно так:

 RewriteEngine on RewriteRule ^/news/([0-9]+)\.html /news.php?news_id=$1 

И это отображает запросы от

 /news.php?news_id=63 

в

 /news/63.html 

Другая возможность делает это с forcetype, который заставляет что-либо спускаться по определенному пути использования php для оценки содержимого. Итак, в вашем файле .htaccess поставьте следующее:

 <Files news> ForceType application/x-httpd-php </Files> 

И тогда index.php может принять действие на основе переменной $ _SERVER ['PATH_INFO']:

 <?php echo $_SERVER['PATH_INFO']; // outputs '/63.html' ?>