1

インストールを新しいサーバーに転送しました。これをデバッグするのに問題があります。私の知る限り、サーバーがファイルを作成/読み取るフォルダーの古いサーバーと同じか、古いサーバーよりも多くの権限が開いています...

私が知る限り、一時ファイルをどこかに作成できないだけですが、どこにあるのかわかりません...

警告: tempnam() [function.tempnam]: open_basedir 制限が有効です。File() が許可されたパス内にありません: (/:/usr/lib/php:/usr/local/lib/php:/tmp) in /home/myacnt/public_html/users/internal/PHPExcel/Writer /Excel5/Worksheet.php 346 行目

警告: fopen() [function.fopen]: 347 行目の /home/myacnt/public_html/users/internal/PHPExcel/Writer/Excel5/Worksheet.php でファイル名を空にすることはできません

警告: tempnam() [function.tempnam]: open_basedir 制限が有効です。File() が許可されたパス内にありません: (/:/usr/lib/php:/usr/local/lib/php:/tmp) in /home/myacnt/public_html/users/internal/PHPExcel/Writer /Excel5/Worksheet.php 346 行目

警告: fopen() [function.fopen]: 347 行目の /home/myacnt/public_html/users/internal/PHPExcel/Writer/Excel5/Worksheet.php でファイル名を空にすることはできません

警告: tempnam() [function.tempnam]: open_basedir 制限が有効です。File() が許可されたパス内にありません: (/:/usr/lib/php:/usr/local/lib/php:/tmp) in /home/myacnt/public_html/users/internal/PHPExcel/Writer /Excel5/Worksheet.php 346 行目

警告: fopen() [function.fopen]: 347 行目の /home/myacnt/public_html/users/internal/PHPExcel/Writer/Excel5/Worksheet.php でファイル名を空にすることはできません

警告: tempnam() [function.tempnam]: open_basedir 制限が有効です。File() が許可されたパス内にありません: (/:/usr/lib/php:/usr/local/lib/php:/tmp) in /home/myacnt/public_html/users/internal/PHPExcel/Shared /OLE/OLE_File.php 95 行目

警告: fopen() [function.fopen]: 96 行目の /home/myacnt/public_html/users/internal/PHPExcel/Shared/OLE/OLE_File.php でファイル名を空にすることはできません

致命的なエラー: /home/myacnt/public_html/users/internal/PHPExcel/Shared/OLE/OLE_File.php:98 でメッセージ「一時ファイルを作成できません」を含むキャッチされない例外「Exception」: #0 /home/myacnt /public_html/users/internal/PHPExcel/Writer/Excel5.php(190): PHPExcel_Shared_OLE_PPS_File->init() #1 /home/myacnt/public_html/users/functions/export.php(58): PHPExcel_Writer_Excel5->save(' /home/myacnt/...') #2 /home/myacnt/public_html/users/manager/functions/export.php(196): multiCSVToExcel(Array, '1305481112_Nick...') #3 /home/myacnt/ public_html/users/manager/viewInvoice.php(13): exportInvoiceLog(Array) #4 {main} が 98 行目の /home/myacnt/public_html/users/internal/PHPExcel/Shared/OLE/OLE_File.php でスローされました

4

2 に答える 2

2

エラー メッセージで示されているように、open_basedirという制限に対処しています。値をチェックインしてphp.ini(phpinfo()これをすばやくチェックするために使用できます)、指定されたディレクトリにファイルを配置するか、値を変更するか、単に完全に無効にする必要があります。無効にした場合は、ベース名を使用して潜在的な「../../」トラバーサルを削除するなど、ファイル名のサニティ チェックを確実に行う必要があります

于 2011-05-21T16:34:47.427 に答える
2

この修正は私のために働いた:

http://phpexcel.codeplex.com/workitem/17840

変更は Shared/File.php に適用する必要があります

于 2012-06-05T19:48:21.950 に答える