Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Apache crash na oci_connect do Oracle DB
Forum PHP.pl > Forum > Serwery WWW > Apache
kornelito
czesc,
moze ktos mi podpowie gdzie popatrzec i co zrobic gdy:

mam Apache 3.2.2, php 5.6 i lacze sie przez php oci_connect do Oracle DB. Dzialalo mi rozwiazanie przez 5 miesiacy, teraz przestalo i nie moge dojsc czemu.

w Apache przy starcie nie ma bledow, w PHP tez nie ma, php uruchamiane z CMD dziala, a jednak uruchamiajac taki kod z przegladarki Chrome z wykomentowana ostatnia linijka wszystko dziala, a z odkomentowana przegladarka Chrom wypisuje "Oczekiwanie na localhost" i "Witryna http://localhost/kor1.php jest niedostepna" i nic sie nie dzieje.


<?php
ini_set ("display_errors", "1");
error_reporting(E_ALL);
echo "przed";
if(!function_exists('oci_connect')) die('Oracle Not Installed');
echo "po";
//$conn = oci_connect('user', 'pass', 'localhost/XE');
?>

gdzie mozna sprawdzic czemu tak sie moze dziac i co blokuje?
Pyton_000
logi apache
kornelito
no wlasnie niewiele tam jest:
w apache access.log pusto teraz, choc czasem loguje sie linia z informacja ze php sie uruchamia, w kazdym razie bez bledu

w apache.error jest:
[Mon Mar 07 21:29:42.333921 2016] [ssl:warn] [pid 4656:tid 380] AH01909: www.example.com:443:0 server certificate does NOT include an ID which matches the server name
[Mon Mar 07 21:29:42.396491 2016] [core:warn] [pid 4656:tid 380] AH00098: pid file C:/xampp/apache/logs/httpd.pid overwritten -- Unclean shutdown of previous Apache run?
[Mon Mar 07 21:29:42.553885 2016] [ssl:warn] [pid 4656:tid 380] AH01909: www.example.com:443:0 server certificate does NOT include an ID which matches the server name
[Mon Mar 07 21:29:42.600813 2016] [mpm_winnt:notice] [pid 4656:tid 380] AH00455: Apache/2.4.16 (Win32) OpenSSL/1.0.1p PHP/5.6.12 configured -- resuming normal operations
[Mon Mar 07 21:29:42.600813 2016] [mpm_winnt:notice] [pid 4656:tid 380] AH00456: Apache Lounge VC11 Server built: Jul 12 2015 10:56:48
[Mon Mar 07 21:29:42.600813 2016] [core:notice] [pid 4656:tid 380] AH00094: Command line: 'c:\\xampp\\apache\\bin\\httpd.exe -d C:/xampp/apache'
[Mon Mar 07 21:29:42.603745 2016] [mpm_winnt:notice] [pid 4656:tid 380] AH00418: Parent: Created child process 812
[Mon Mar 07 21:29:43.713343 2016] [ssl:warn] [pid 812:tid 332] AH01909: www.example.com:443:0 server certificate does NOT include an ID which matches the server name
[Mon Mar 07 21:29:43.916687 2016] [ssl:warn] [pid 812:tid 332] AH01909: www.example.com:443:0 server certificate does NOT include an ID which matches the server name
[Mon Mar 07 21:29:44.030090 2016] [mpm_winnt:notice] [pid 812:tid 332] AH00354: Child: Starting 150 worker threads

a w php_error_log jest pusto


dzis zainstalowalem Wiresharka by podejrzec pakiety, i wychodzi mi na to ze przy uruchmieniu z przegladarki nawet nie probuje laczyc sie z serwerem bazy danych, czyli jakby zawieszal sie chrome/apache wczesniej, przy uruchomieniu oci_connect
jak uruchamiam ten sam php z command line to widze w wiresharku wyslanie pakietu do bazy i odpowiedz.

moje pomysly to ze:
- apache nie widzi z jakiegos powodu tnsnames.ora (ale jest w 2ch miesjach juz i oba sa w Path zmiennej srodowiskowej)
- uzywam jakiejs zlej biblioteki php_oci8.dll albo php_oci8_11g.dll ( biblioteki php_oci8_12c.dll nie uzywam i nie mam wlaczonej w php.ini)

co by tu jeszcze zrobic by zobaczyc czemu chrome/apache sie zawiesza i czeka na localhost :? sad.gif ... masakra jakas.


Pyton_000
Czyli jak ten sam skrypt odpalisz w przeglądarce to nie działa, a w cli działa?

wrzuć sobie phpinfo() i w przeglądarce odpal. Zobacz czy masz włączone obd. Być może problem jest w tym że masz włączone extensions dla CLI a dla Apache nie.
kornelito
tak, uruchamiajac: C:\xampp\php>php.exe ../htdocs/kor1b.php ...dziala OK

a uruchamiajac z przegladarki Chrome: http://localhost/kor1b.php ... nie dziala sad.gif zawiesza sie i wypisuje na dole info ze oczekuje na localhost
nospor
Czemu skupiles sie tylko na pierwszej czesci wypowiedzi Pytona a druga calkowicie olales?
Cytat
wrzuć sobie phpinfo() i w przeglądarce odpal. Zobacz czy masz włączone obd. Być może problem jest w tym że masz włączone extensions dla CLI a dla Apache nie.
kornelito
w tym co zwraca phpinfo() nie znajduje slowa "obd". Coz to takiego ma byc?
nospor
Oracle Data Base

Pyton chodzilo bys sprawdzil czy masz tam ORacle. slowa OCI lub cos w ten desen.
kornelito
tak mam:
oci8

OCI8 Support enabled
OCI8 DTrace Support disabled
OCI8 Version 2.0.8
Revision $Id: f04114d4d67cffea4cdc2ed3b7f0229c2caa5016 $
Oracle Run-time Client Library Version 11.2.0.4.0
Oracle Compile-time Instant Client Version 11.2
Directive Local Value Master Value
oci8.connection_class no value no value
oci8.default_prefetch 100 100
oci8.events Off Off
oci8.max_persistent -1 -1
oci8.old_oci_close_semantics Off Off
oci8.persistent_timeout -1 -1
oci8.ping_interval 60 60
oci8.privileged_connect Off Off
oci8.statement_cache_size 20 20
Statistics
Active Persistent Connections 0
Active Connections 0


w php.ini mam wlaczone tak, bo baza jest 11.2

;extension=php_oci8.dll ; Use with Oracle 10gR2 Instant Client
extension=php_oci8_11g.dll ; Use with Oracle 11gR2 Instant Client
;extension=php_oci8_12c.dll ; Use with Oracle Database 12c Instant Client

a biblioteki oci sciagnalem stad: http://pecl.php.net/package/oci8/2.0.8/windows
sa w wersji 2.0.8








najciekawsze jest to ze to rozwiazanie dzialalo i z dnia na dzien przestalo, zakladam wiec ze to nie wersje bilbliotek sa problemem, ale cos co moglo sie zmimenic w Windows (jakis automatyczny upgrade) albo cos z Apache (np. zle sie zamknal przy crashu czy restarcie komputera), albo osiagnlem jakis magiczny licznik mozliwych polaczen do bazy bo uzywam tego od 5 miesiecy, albo moze ta biblioteka ma zaszyta jakas date po ktorej ma przestac dzialac by wymusic uzywanie nowszych.

brak mi pomyslow ...
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2024 Invision Power Services, Inc.