Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Skrypt nie widzi Zend/Application.php
mastersaygon
post 13.05.2015, 13:31:41
Post #1





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 25.04.2012

Ostrzeżenie: (0%)
-----


Borykam się z pewnym problemem od dwóch dni i nie mogę go rozwiązać, może Wam wpadnie coś do głowy, podczas wywoływania aplikacji przez przeglądarkę zostaję uraczony poniższym error logiem:

Cytat
[Wed May 13 14:23:48.897534 2015] [:error] [pid 13751] [client 127.0.0.1:43540] PHP Warning: require_once(Zend/Application.php): failed to open stream: No such file or directory in /opt/xxxx/manager/src/backend/version/developer/htdocs/index.php on line 6
[Wed May 13 14:23:48.897637 2015] [:error] [pid 13751] [client 127.0.0.1:43540] PHP Stack trace:
[Wed May 13 14:23:48.897662 2015] [:error] [pid 13751] [client 127.0.0.1:43540] PHP 1. {main}() /opt/xxxx/manager/src/backend/version/developer/htdocs/index.php:0
[Wed May 13 14:23:48.897696 2015] [:error] [pid 13751] [client 127.0.0.1:43540] PHP Fatal error: require_once(): Failed opening required 'Zend/Application.php' (include_path='.:/opt/xxxx/manager/www/backend/dev/dev1/library/:/opt/xxxx/manager/external/library/') in /opt/xxxx/manager/src/backend/version/developer/htdocs/index.php on line 6
[Wed May 13 14:23:48.897710 2015] [:error] [pid 13751] [client 127.0.0.1:43540] PHP Stack trace:
[Wed May 13 14:23:48.897724 2015] [:error] [pid 13751] [client 127.0.0.1:43540] PHP 1. {main}() /opt/xxxx/manager/src/backend/version/developer/htdocs/index.php:0


Jestem pewny że ścieżka do pliku jest prawidłowa, prawo do odczytu również jest nadane prawidłowo a mimo to plik nie jest widziany przez skrypt, macie jakieś propozycje na rozwiązanie tej zagadki?

Plik Application.php znajduje się w /opt/xxxx/manager/external/library/Zend

Ten post edytował mastersaygon 13.05.2015, 14:18:12
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 12)
viking
post 13.05.2015, 13:59:27
Post #2





Grupa: Zarejestrowani
Postów: 6 378
Pomógł: 1116
Dołączył: 30.08.2006

Ostrzeżenie: (0%)
-----


Masz ustawione include_path? Przykład https://github.com/xorock/ZF1-Skeleton-PHPT...r/www/index.php


--------------------
Go to the top of the page
+Quote Post
mastersaygon
post 13.05.2015, 14:13:55
Post #3





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 25.04.2012

Ostrzeżenie: (0%)
-----


Tak, mam ustawione.
Go to the top of the page
+Quote Post
viking
post 13.05.2015, 14:20:40
Post #4





Grupa: Zarejestrowani
Postów: 6 378
Pomógł: 1116
Dołączył: 30.08.2006

Ostrzeżenie: (0%)
-----


Pokaż kawałek kodu gdzie to robisz. Plik application.php jest oczywiście w folderze /opt/xxxx/manager/external/library/Zend? Bo napisaleś jakby bezpośrednio.


--------------------
Go to the top of the page
+Quote Post
mastersaygon
post 13.05.2015, 14:30:19
Post #5





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 25.04.2012

Ostrzeżenie: (0%)
-----


Wygląda to tak:
  1. <?php
  2. namespace Maintain;
  3.  
  4. $_ = $_SERVER['_'];
  5.  
  6.  
  7. define('LOCAL', realpath(dirname(__FILE__)));
  8.  
  9. realpath(LOCAL . '/libs/') . PATH_SEPARATOR . LOCAL . PATH_SEPARATOR . realpath(LOCAL . '/../library/')
  10. );


Co do Twojego pytania to zgadza się plik application.php znajduje się w opt/xxxx/manager/external/library/Zend.
Już poprawiłem w pierwszym poście.

Ten post edytował mastersaygon 13.05.2015, 14:32:06
Go to the top of the page
+Quote Post
viking
post 13.05.2015, 15:00:05
Post #6





Grupa: Zarejestrowani
Postów: 6 378
Pomógł: 1116
Dołączył: 30.08.2006

Ostrzeżenie: (0%)
-----


Daj tam gdzieś w kodzie jeszcze przed wywołaniem require_once 'Zend/Application.php';


--------------------
Go to the top of the page
+Quote Post
mastersaygon
post 13.05.2015, 20:17:48
Post #7





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 25.04.2012

Ostrzeżenie: (0%)
-----


To o czym piszesz @viking mam w innym pliku, co więcej do poniedziałku wszystko działało poprawnie, zastanawiam się co mogłem po drodze zrobić aby przyczynić się do obecnej sytuacji ale nie przypominam sobie abym robił coś istotnego na serwerze aby cokolwiek uszkodzić.
Plik w którym posiadam require_once 'Zend/Application.php'; wygląda tak:
  1. <?php
  2. define('APP_START', microtime(true));
  3.  
  4. require_once '../zend_config.php';
  5. require_once 'Zend/Application.php';
  6. require_once 'Zend/Config/Ini.php';
  7.  
  8. $config = new Zend_Config_Ini(APP_PATH . '/configs/application.ini', 'PRODUCTION', true);
  9. $subconfig = new Zend_Config_Ini(DATA_PATH . '/private/configs/custom.ini', 'PRODUCTION');
  10. $config->merge($subconfig);
  11.  
  12. $application = new Zend_Application('PRODUCTION', $config);
  13. $application->bootstrap()->run();
Go to the top of the page
+Quote Post
salfunglandyare
post 13.05.2015, 23:10:53
Post #8





Grupa: Zarejestrowani
Postów: 150
Pomógł: 31
Dołączył: 10.01.2007
Skąd: Bydgoszcz/Inowrocław

Ostrzeżenie: (0%)
-----


A jesteś pewien, że skrypt ma uprawnienia do czytania tego pliku? sprawdź uprawnienia każdego z katalogów /opt/xxxx/manager/external/library/Zend oraz samego pliku Application.php

//edit, proces apache (user apache/httpd/www/www-data, jakkolwiek u Ciebie się to nazywa) powinien mieć uprawnienie X (execute) dla każdego folderu oraz R (read) dla Application.php

Ten post edytował salfunglandyare 13.05.2015, 23:12:18
Go to the top of the page
+Quote Post
mastersaygon
post 14.05.2015, 10:58:40
Post #9





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 25.04.2012

Ostrzeżenie: (0%)
-----


Jestem pewny na 100% że użytkownik/grupa mają prawo odczytu i wykonania dla tych katalogów i plików.

Kod:
  1. <?php echo exec('whoami'); ?>

zwraca mi www-data, zweryfikowałem uprawnienia dla tego użytkownika, wszystko wydaje się być w porządku.
Go to the top of the page
+Quote Post
Pyton_000
post 14.05.2015, 11:30:10
Post #10





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

Ostrzeżenie: (0%)
-----


Wrzuć get_include_path w pliku w którym includujesz Zend i sprawdź czy aby na pewno jest dobrze ustawiona zmienna PATH
Go to the top of the page
+Quote Post
mastersaygon
post 14.05.2015, 12:25:24
Post #11





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 25.04.2012

Ostrzeżenie: (0%)
-----


  1. echo ini_get('include_path');

zwraca mi
Cytat
.:/opt/xxxx/manager/www/backend/dev/dev1/library/:/opt/xxxx/manager/external/library/


Stało się coś dziwnego, mimo braku dużej ingerencji w zasoby, prócz dopisania powyższej linijki kodu wszystko zaczęło działać ponownie... Przecież ta linijka kodu nie mogła niczego zmienić...

Niemniej dziękuje Wam za poświęcony czas i rady!
Go to the top of the page
+Quote Post
Pyton_000
post 14.05.2015, 12:27:08
Post #12





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

Ostrzeżenie: (0%)
-----


Mogła o ile był w jakimś cache albo cóś smile.gif
Go to the top of the page
+Quote Post
mastersaygon
post 14.05.2015, 13:14:08
Post #13





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 25.04.2012

Ostrzeżenie: (0%)
-----


W takim razie zwracam honory i jeszcze raz dziękuję smile.gif
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 18.07.2025 - 04:28