Я только что перешел с использования PHP на Perl для скрипта, который содержит команды API.
Как php, .htaccess выглядел так:
RewriteRule ^api/?$ api.php [L]
RewriteRule ^api/?([a-zA-Z0-9_-]{1,})?/?$ api.php?command=$1 [QSA,L]
RewriteRule ^api/?([a-zA-Z0-9_-]{1,})?/?([a-zA-Z0-9_-]{1,})?/?$ api.php?command=$1&key=$2 [QSA,L]
Конечный результат выполнялся с URL-адресом, подобным http://example.com/api/command/key
(где api - имя скрипта), сработало как задумано.
Переключение на Perl, посещение http://example.com/api
перенаправляет на http://example.com/usr/lib/cgi-bin/api.pl
, который не работает ни в малейшей степени, а также выглядит отвратительно. Я перепробовал все, что мог придумать с .htaccess
и serve-cgi-bin.conf
, но у меня ничего не работает. На самом деле не имеет значения, в какую папку мне нужно поместить api.pl
, если имя и расширение папки не отображаются в URL.
Как я могу получить нужный URL?