PHP abgeschnittener Ordnername

Status
Für weitere Antworten geschlossen.

Domonid

Benutzer
Mitglied seit
24. Nov 2013
Beiträge
1
Punkte für Reaktionen
0
Punkte
0
Hallo,

ich habe versucht, Pixlie (http://www.pixlie2.de) auf einem Synology DS110j mit DSM 3.4 einzurichten.
Das Script liegt bei mir lokal auf http://192.168.2.2/Pixlie_2/beispiel.php.

Leider erhalte ich bereits über das beispiel.php fehlerhafte Rückmeldungen über den Dateipfad. Dies führt dazu, dass auch die automatisch erstellten Links nicht funktionieren.


Rich (BBCode):
short_relpath_create' => false

[path_pixlie] => http://192.168.2.2/ie_2/pixlie.php



Rich (BBCode):
short_relpath_create' => true

[path_pixlie] => http://192.168.2.2/b/Pixlie_2/pixlie.php

Ich vermute, das "/b/" kommt von dem Ordner "web":

Rich (BBCode):
[upload_dir] => /volume1/web/Pixlie_2/upload
[cache_dir] => /volume1/web/Pixlie_2/cache


Hat jemand eine Idee, woran das liegen könnte?


Viele Grüße

Dominic

PS: Ich versuche mich gerade in PHP reinzuarbeiten, bin also nicht wirklich fit in der Materie. Das müsste der Part im PHP-Script sein, der mir unter anderem den Dateipfad [path_pixlie] zurückmeldet:

PHP:
	/*********************************** 9.5 Ordner Grunddaten lesen ********************************/

						$pixlie_item_key = $pixlie_key_counter_dir;
						$pixlie_key_counter_dir ++;

						$pixlie_link_file = urlencode(utf8_encode($pixlie_item_name));
						$pixlie_link_query = preg_replace('/%2F/','/',urlencode(utf8_encode($pixlie_query)));

						if($pixlie_query==''){
							$pixlie_table_dir[$pixlie_item_key]['link_get'] =
							'?'.$pixlie_config['http_var_name'].'=/'.$pixlie_link_file;
							$pixlie_table_dir[$pixlie_item_key]['link_pathinfo'] = '/'.$pixlie_link_file;}
						else{
							$pixlie_table_dir[$pixlie_item_key]['link_get'] =
							'?'.$pixlie_config['http_var_name'].'='.$pixlie_link_query.'/'.$pixlie_link_file;
							$pixlie_table_dir[$pixlie_item_key]['link_pathinfo'] =
								$pixlie_link_query.'/'.$pixlie_link_file;}
						$pixlie_table_dir[$pixlie_item_key]['name'] = utf8_encode($pixlie_item_name);
						$pixlie_table_dir[$pixlie_item_key]['atime'] = fileatime($pixlie_item_path);
						$pixlie_table_dir[$pixlie_item_key]['ctime'] = filectime($pixlie_item_path);
						$pixlie_table_dir[$pixlie_item_key]['mtime'] = filemtime($pixlie_item_path);}}}

			closedir($pixlie_dir_handle);
			$pixlie_table_env['status'] = true;
			$pixlie_table_env['numberof_file'] = count($pixlie_table_file);
			$pixlie_table_env['numberof_dir']	= count($pixlie_table_dir);
			$pixlie_table_env['query']	= utf8_encode($pixlie_query);
			$explode_query = explode("/", $pixlie_table_env['query']);
			$pixlie_table_env['actual_dir'] = $explode_query[(count($explode_query) - 1)];
			$pixlie_table_env['upload_dir'] = $pixlie_config['dir_upload'];
			$pixlie_table_env['cache_dir'] = $pixlie_config['dir_cache'];
			$pixlie_table_env['pixlie_version'] = '2.3.1';
			$pixlie_table_env['version_author'] = "Phoenix";

			$__FILE__ = (substr($_SERVER["DOCUMENT_ROOT"], 0, strlen('/kunden')) == '/kunden') ? '/kunden'.__FILE__ : __FILE__; // 1&1 workaround
			if ( $pixlie_config['relative_path'] != '' ) {
				$relpath = $pixlie_config['relative_path'].((substr($pixlie_config['relative_path'], -1) != '/') ? '/' : '');
			} else {
				
				$fullpath = str_replace('\\', '/', dirname($__FILE__));
				$fullpath = $fullpath.((substr($fullpath, -1) != '/') ? '/' : '');
				$test_pos = strpos($fullpath, $_SERVER["DOCUMENT_ROOT"]);
				if ($pixlie_config['short_relpath_create']) {	//alternative Relpathberechnung fuer Stratokunden
					$host_in_path = str_replace("www.","",str_replace(".de","",$_SERVER['HTTP_HOST']));
					$istartpos = strpos($fullpath, $host_in_path) + strlen($host_in_path);
					$iendpos = strlen(str_replace('\\', '/', $_SERVER["DOCUMENT_ROOT"]));
					$relpath = substr($fullpath, $istartpos);
				}
				else { //Standardberechnung
					$istartpos = strpos($fullpath, $_SERVER["DOCUMENT_ROOT"]);
					$iendpos = $istartpos + strlen(str_replace('\\', '/', $_SERVER["DOCUMENT_ROOT"]));
					$relpath = substr($fullpath, $iendpos);
				}
				$relpath .= (substr($relpath, -1) != '/') ? '/' : '';
			}
			$pixlie_table_env['path_pixlie'] = 'http://'.$_SERVER['HTTP_HOST'].
				((substr($_SERVER['HTTP_HOST'],-1) != '/' && substr($relpath,0,1) != '/')?'/':'').
				$relpath.basename($__FILE__);

			if (!isset($istartpos))
					pixlie_error("Der Pfad zur Pixlie konnte nicht ermittelt werden");
		}
		else{
				pixlie_error($pixlie_lang['dir_opendir_false']);}
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat