Prosíme přihlašte se nebo zaregistrujte.

Přihlašte se svým uživatelským jménem a heslem.
Vaše pomoc je stále potřeba!

Autor Téma: perl, cgi, apache, databáze  (Přečteno 5777 krát)

Peter Smatana

  • Návštěvník
  • *
  • Příspěvků: 58
perl, cgi, apache, databáze
« kdy: 29 Října 2008, 18:35:16 »
Ahoj,
Mám knížku o perlu a připojení k internetu :-D, google používám. Přesto si nevím rady jak se "obout" do psaní webových skriptů cgi. Nevím jak nakonfigurovat apache, které soubory inkludovat aby to jelo, jak se propojit s databazí mysql. Mohl by mi někdo naťuknout ty nejzákladnější základy jak co nakonfigurovat, co a jak a pak to snad nějak půjde :-) klidně stačí linky na weby kde se něco dočtu. Díky za každou radu

Peter Smatana

  • Návštěvník
  • *
  • Příspěvků: 58
Re: perl, cgi, apache, databáze
« Odpověď #1 kdy: 30 Října 2008, 09:04:57 »

Peter Smatana

  • Návštěvník
  • *
  • Příspěvků: 58
Re: perl, cgi, apache, databáze
« Odpověď #2 kdy: 30 Října 2008, 14:47:06 »
stejně to podle toho anglického návodu nejde :-( podobných návodů jsem prošel několik a stále nic. v /var/www/cgi-bin mam soubor test.pl. když napíšu do ff localhost a kliknu na adresář cgi-bin napíše se: You don't have permission to access /cgi-bin/ on this server. když v terminálu spouštím apache tak se vypíše:

 * Starting web server apache2
apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
httpd (pid 5631) already running

DuckD

  • Stálý člen
  • ***
  • Příspěvků: 878
  • Open Srdcař
    • www.duckd.cz
Re: perl, cgi, apache, databáze
« Odpověď #3 kdy: 30 Října 2008, 15:41:20 »
...You don't have permission to access /cgi-bin/ on this server.
Zkus zjistit jak se nastavují práva pro daný adresář/soubory.

* Starting web server apache2
apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
httpd (pid 5631) already running

WIKI
17. Zabezpečení adresáře heslem pomocí .htaccess
->  1. Řešení problémů
8) Lidé žijí v souborech. ===>> LINUXTERO <<=== Pravidelná dávka tvého linuxtera!

Peter Smatana

  • Návštěvník
  • *
  • Příspěvků: 58
Re: perl, cgi, apache, databáze
« Odpověď #4 kdy: 30 Října 2008, 17:55:53 »
Citace
Zkus zjistit jak se nastavují práva pro daný adresář/soubory.
No, souboru test.pl jsem nastavil práva -rwxrwxrwx. Adresáři cgi-bin jsem nastavil drwxrwxrwx. Doufám že jsem tím nic nepokazil... ???

Citace
17. Zabezpečení adresáře heslem pomocí .htaccess
->  1. Řešení problémů
Do souboru /etc/apache2/apache2.conf jsem přidal řádek
Kód: [Vybrat]
ServerName /var/www a nic se nestalo. Pořád se ve ff zobrazuje
Kód: [Vybrat]
* Starting web server apache2
apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
httpd (pid 5631) already running
Když jsem v terminálu apache restartoval tak se vypsalo toto:
Kód: [Vybrat]
root@smonty:/etc/apache2# /etc/init.d/apache2 restart
 * Restarting web server apache2                                         [ OK ]
což vypadá nadějně oproti předchozímu hlášení :-)

Peter Smatana

  • Návštěvník
  • *
  • Příspěvků: 58
Re: perl, cgi, apache, databáze
« Odpověď #5 kdy: 02 Listopadu 2008, 06:50:37 »
Ahoj,
Problém se mi stále nedaří řešit :-( prolezj jsem diskzte na http://www.ubuntuforums.org/ a nic moc... Instaloval jsem balíček mod_perl ale nefunguje. Pak jsem zkoušel do souboru /etc/apache/httpd.conf vložit řádky
Kód: [Vybrat]
<Directory /vas/adresar>
AllowOverride All
</Directory>
změnit práva a restartovat tak jak na wiki píšou. A nic. Ještě polílám výpis z error logu apache (/var/log/apache2/error.log), z dnešního rána.

Kód: [Vybrat]
[Sun Nov 02 05:59:31 2008] [notice] Apache/2.2.8 (Ubuntu) mod_perl/2.0.3 Perl/v5.8.8 configured -- resuming normal operations
[Sun Nov 02 06:12:36 2008] [notice] caught SIGWINCH, shutting down gracefully
[Sun Nov 02 06:12:46 2008] [notice] Apache/2.2.8 (Ubuntu) mod_perl/2.0.3 Perl/v5.8.8 configured -- resuming normal operations
[Sun Nov 02 06:12:53 2008] [error] [client 127.0.0.1] attempt to invoke directory as script: /usr/lib/cgi-bin/, referer: http://localhost/
[Sun Nov 02 06:12:54 2008] [error] [client 127.0.0.1] File does not exist: /var/www/favicon.ico
[Sun Nov 02 06:12:54 2008] [error] [client 127.0.0.1] File does not exist: /var/www/favicon.ico
[Sun Nov 02 06:15:46 2008] [error] [client 127.0.0.1] attempt to invoke directory as script: /usr/lib/cgi-bin/, referer: http://localhost/
[Sun Nov 02 06:22:31 2008] [error] [client 127.0.0.1] attempt to invoke directory as script: /usr/lib/cgi-bin/, referer: http://ubuntuforums.org/showthread.php?t=516449
[Sun Nov 02 06:27:58 2008] [notice] caught SIGWINCH, shutting down gracefully
[Sun Nov 02 06:28:08 2008] [notice] Apache/2.2.8 (Ubuntu) mod_perl/2.0.3 Perl/v5.8.8 configured -- resuming normal operations
[Sun Nov 02 06:28:12 2008] [error] [client 127.0.0.1] attempt to invoke directory as script: /var/www/cgi-bin, referer: http://localhost/
[Sun Nov 02 06:28:15 2008] [error] [client 127.0.0.1] attempt to invoke directory as script: /var/www/cgi-bin, referer: http://localhost/

Martin Kiklhorn

  • Člen občanského sdružení Ubuntu ČR a placené komunitní podpory
  • Administrátor fóra
  • Závislák
  • ******
  • Příspěvků: 4807
  • グーグル!ご存知ですか?
    • HEJ
Re: perl, cgi, apache, databáze
« Odpověď #6 kdy: 06 Listopadu 2008, 02:02:11 »
Kód: [Vybrat]
ServerName /var/www
zajímavé jméno, už se to tu řešilo, použijde vyhledávání

Kód: [Vybrat]
attempt to invoke directory as script:
mohlo by pomoci malé nakopnutí:
http://www.gossamer-threads.com/lists/apache/users/323083

/var/www/cgi-bin mam soubor test.pl. když napíšu do ff localhost a kliknu na adresář cgi-bin napíše se: You don't have permission to access /cgi-bin/ on this server.
A neklikejte na cgi-bin (předpokládám že máte zakázaný listing té složky = v konfiguráku k té složce uvedenu option -Indexes) ale zkuste rovnou http://localhost/cgi-bin/test.pl

Pokud by to nepomohlo tak se zkuste podívat po knížce Apache Server 2 Bibble, CGI je tam věnováno asi jen 100 stránek, ale dají se pochopit souvislosti jak to s tím cgi a tou konfigurací. Někde na webu je určitě i pdf.
Dokumentace http://httpd.apache.org/docs/2.0/ je dobrá, ale z knihy se lépe chápou základy.

Nevím co jste chtěl řešit tím AllowOverride - jen povolujete interpretaci .htaccess aby chování té složky mohlo být jiné než je definováno v globálním konfiguráku. Cesta "něco z nějakého návodu někam nakopírovat" bez toho abyste alespoň zhruba měl představu co to dělá by se časem nemusela vyplatit. A hlavně řešení jakéhokoliv triviálního problému bude z důvodu tápání trvat stále dlouho.

Případně sem zkuste jako poslední možnost pastnout vaši konfiguraci.
Jsou ve vašem dotazu OPRAVDU VŠECHNY vám dostupné informace o problému?
Linux user since 2007-10-11, Registered #456007
Virtual
| Distribuce
~/slozka znamená /home/"vase jmeno"/slozka
6521 69DE 0F34 FCBC FB1D  DE76 360E 52B2 F71A B8E8

Peter Smatana

  • Návštěvník
  • *
  • Příspěvků: 58
Re: perl, cgi, apache, databáze
« Odpověď #7 kdy: 19 Listopadu 2008, 19:34:54 »
Ahoj,
Omlouvám se že jsem byl mimo, bylo čtvrtletí :-( a ještě k tomu maturuju :-<

Na internetu jsem si našel tuto knihu http://books.google.cz/books?id=N-4_nOLUB0gC&pg=PA238&lpg=PA238&dq=Perl+Apache+na+Linuxu&source=bl&ots=elj1gkVDCw&sig=qYAmet6VXm22NKQ8kkTp_mic3fA&hl=cs&sa=X&oi=book_result&resnum=3&ct=result#PPA224,M1

Které kapitoly si mám nastudovat aby mě to stálo co nejméně úsilí a výsledek se brzy dostavil? Nepotřebuju žádné fikanosti, nepotřebuju bezpečnost, stačí aby mi to jelo a mohl jsem šolíchat v Perlu a vytrářet CGI. Porozumění do hlouby si nechám na vysokou školu :-)

Případně vílte-li o nějakém rychlém How To Do It :-D uvítám i to.

Díky za pochopení

premet

  • Host
Re: perl, cgi, apache, databáze
« Odpověď #8 kdy: 19 Listopadu 2008, 21:20:07 »
Já bych ti doporučil knihu o Perlu, jmenuje se Perl pro zelenáče a autorem je Pavel Satrapa . Jsou tam začátky Perlu, přes cykly, pole, regulérní výrazy, moduly až po nějakej ten základ Perlu na webu a CGI. Má to přes 200 stran a já sem ji kupoval za stovku a myslím, že ta knížka za to stojí  :).

kkaarreell

  • Závislák
  • ****
  • Příspěvků: 1072
Re: perl, cgi, apache, databáze
« Odpověď #9 kdy: 20 Listopadu 2008, 09:26:19 »
jo, Satrapa je dobrej zacatek. K zahozeni neni taky tento tutorial na webu http://perl.eurohost.cz/

Peter Smatana

  • Návštěvník
  • *
  • Příspěvků: 58
Re: perl, cgi, apache, databáze
« Odpověď #10 kdy: 20 Listopadu 2008, 16:16:43 »
Ahoj,
Díky za rady z čeho se mám učit Perl. Perl pro zelenáče mám a učím se z něho. Vyhrál jsem knihu Myslíme v jazyku Perl. Já potřebuju poradit jak rozběhat na Apačovi Pert.

Pavel Půlpán


Peter Smatana

  • Návštěvník
  • *
  • Příspěvků: 58
Re: perl, cgi, apache, databáze
« Odpověď #12 kdy: 20 Listopadu 2008, 18:09:32 »
Balíček libapache2-mod-perl2 mám už nainstalovaný. Tuším že by to včil chtělo nějak přez konfigurační soubory přemluvit Apače aby si s tím balíčekem rozuměl.

Co jsem si procházel seznam v synaptiku, je tam asi milion balíčků začínajíci na libapache2 a spousta z nich se týká perlu :-( taková nepřehledná džungle, kde nevím co mi k čemu je.
« Poslední změna: 20 Listopadu 2008, 18:20:15 od Peter Smatana »

Pavel Půlpán

Re: perl, cgi, apache, databáze
« Odpověď #13 kdy: 20 Listopadu 2008, 18:40:10 »
A modul máš spuštěnej? Seznam všech dostupných je v /etc/apache2/mods-available, automaticky spuštěný pak v /etc/apache2/mods-enabled.

Peter Smatana

  • Návštěvník
  • *
  • Příspěvků: 58
Re: perl, cgi, apache, databáze
« Odpověď #14 kdy: 20 Listopadu 2008, 19:30:07 »
No, nevim jak se moduly spouštějí ale v adresáři /etc/apache2/mods-available je modul perl.load. V adresáři /etc/apache2/mods-enabled je modul cgil.conf a cgil.load. Možná ten je potřeba spustit. Jen nevím jak. Rači sem dám i obsah těch dvou adresářů.

Kód: [Vybrat]
root@smonty:/etc/apache2/mods-available# ls
actions.conf      authn_default.load    cache.load      deflate.load     headers.load       mime.conf            proxy_ftp.load   substitute.load
actions.load      authn_file.load       cern_meta.load  dir.conf         charset_lite.load  mime.load            proxy_http.load  suexec.load
alias.conf        authnz_ldap.load      cgid.conf       dir.load         ident.load         mime_magic.conf      proxy.load       unique_id.load
alias.load        authz_dbm.load        cgid.load       disk_cache.conf  imagemap.load      mime_magic.load      rewrite.load     userdir.conf
asis.load         authz_default.load    cgi.load        disk_cache.load  include.load       negotiation.conf     setenvif.conf    userdir.load
auth_basic.load   authz_groupfile.load  dav_fs.conf     dump_io.load     info.conf          negotiation.load     setenvif.load    usertrack.load
auth_digest.load  authz_host.load       dav_fs.load     env.load         info.load          perl.load            speling.load     version.load
authn_alias.load  authz_owner.load      dav.load        expires.load     ldap.load          proxy_ajp.load       ssl.conf         vhost_alias.load
authn_anon.load   authz_user.load       dav_lock.load   ext_filter.load  log_forensic.load  proxy_balancer.load  ssl.load
authn_dbd.load    autoindex.conf        dbd.load        file_cache.load  mem_cache.conf     proxy.conf           status.conf
authn_dbm.load    autoindex.load        deflate.conf    filter.load      mem_cache.load     proxy_connect.load   status.load

Kód: [Vybrat]
root@smonty:/etc/apache2/mods-enabled# ls
alias.conf       authn_file.load       authz_host.load  autoindex.load  dir.conf  mime.conf         negotiation.load  setenvif.load
alias.load       authz_default.load    authz_user.load  cgid.conf       dir.load  mime.load         perl.load         status.conf
auth_basic.load  authz_groupfile.load  autoindex.conf   cgid.load       env.load  negotiation.conf  setenvif.conf     status.load

 


Provoz zaštiťuje spolek OpenAlt.