Поддержка Проблемы и решения Запуск cgi-bin Perl скрипта

  • Приветствую.
    Решил побаловаться с Perl и влип.
    Создал папку cgi-bin
    в ней .htaccess:

    Options +ExecCGI
    AddHandler cgi-script cgi pl

    Ну и сам скрипт:

    #!/usr/bin/perl
    
    use warnings;
    use strict;
    
    use CGI qw/:standard/;
    
    print header;
    print start_html;
    
    start_html('hello world'), # start the HTML
    h1('hello world'),         # level 1 header
    
    print end_html;                  # end the HTML

    Права у скрипта 755.
    Вызываю. Получаю 404 ошибку.

    .htaccess в корне:

    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    
    RewriteCond %{SERVER_PORT} !^443$
    RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]
    
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>

    Как? запустить Perl скрипт в wordpress?

    Страница, с которой нужна помощь: [войдите, чтобы увидеть ссылку]

Просмотр 5 ответов — с 1 по 5 (всего 5)
  • Вызываю.

    Что именно?

    Как? запустить Perl скрипт в wordpress?

    Что Вы подразумеваете под «в wordpress»?

    Юрий, спасибо.
    Ну что-ж я такой косноязычный.:-)
    Вызываю скрипт
    https://umnikov.ru/cgi-bin/hello.pl

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

    Чую, что проблема в головном .htaccess
    Он редиректит все на index.php
    И в подпапку даже не смотрит.

    Значит надо новое правило добавлять…

    Модератор Yui

    (@fierevere)

    ゆい

    -f -d в условиях означают проверку на наличие файла или каталога указанного в url, вероятно ваш апач не находит перловый скрипт по иным причинам нежели вордпресс и его .htaccess

    Вызываю скрипт
    https://umnikov.ru/cgi-bin/hello.pl

    Сайт под управление WordPress.

    Ну тут wordpress совсем сбоку. И побоку 🙂 С тем же успехом мог быть любой движок или вообще никакого не быть. Это на уровне Апача разруливается.

    Он редиректит все на index.php

    Не всё, а только то, чего нет «физически». Если подхватил /cgi-bin/hello.pl, значит, Апач по какой-то причине не дотянулся до этого файла. Может, права на директорию /cgi-bin/ неверно выставлены, а может Апач ее ищет совсем в другом месте (алиас в конфиге).

    Юрий, спасибо.
    Натолкнул на мысль.

    Все оказалось проще… 500 ошибка возвращалась и обрабатывалась движком WordPress как 404.

Просмотр 5 ответов — с 1 по 5 (всего 5)
  • Тема «Запуск cgi-bin Perl скрипта» закрыта для новых ответов.