3

CPanelでパイプスクリプトを作成し、スクリプトの先頭にhashbang:#!/usr/bin/php -qを配置しました。スクリプトが実行され、電子メールのログが必要に応じてDBのテーブルに配置されます。

しかし...それは、電子メールが通過せず、次のように表示されると主張する電子メールを送り返します...

This message was created automatically by mail delivery software.

A message that you sent could not be delivered to one or more of its
recipients. This is a permanent error. The following address(es) failed:

 pipe to |/home/xxxxx/xxxxx.php
   generated by support@xxxxxxx.net

The following text was generated during the delivery attempt:

------ pipe to |/home/xxxxxx/xxxx.php
      generated by support@xxxxxxxxx.net ------

PHP Deprecated:  Directive 'magic_quotes_gpc' is deprecated in PHP 5.3 and greater in Unknown on line 0
<br />
<b>Deprecated</b>:  Directive 'magic_quotes_gpc' is deprecated in PHP 5.3 and greater in <b>Unknown</b> on line <b>0</b><br />

私はすべての個人情報を削除しましたが、私の問題に関連するものは何もありません。

私の問題は何でしょうか?

4

4 に答える 4

3

CPanelにパイプをどのように追加しましたか?

このガイドに従う場合:http ://www.phpshare.org/articles/Piping-Incoming-Mail-with-PHP.html

CPanelに以下を追加すると書かれています。

|php -q /home/phpshare/public_html/handler.php

そのガイドで説明されているように、CPanelに-qフラグも含めましたか?

于 2010-12-01T21:56:38.480 に答える
1

最近、サーバーのphpバージョン、つまり5.2.xを5.3にアップグレードしたに違いないと思います。

PHP5.3はをサポートしていませんmagic_quotes_gpc

したがって、php.iniでその行をコメント化または削除します。cPanelサーバーでは、php.iniのパスは次のとおりです。/usr/local/lib/php.ini

コメントには、を使用する必要があります;

; magic_quotes_gpc = on
于 2012-03-30T09:16:14.350 に答える
1

何らかの理由でphpスクリプトが失敗した場合(この場合は魔法の引用符のエラー)、電子メールは拒否されます(スクリプトで電子メールを処理した場合でも)。システムは、スクリプトエラーが発生した場合、メッセージ配信が失敗したと「想定」します。

他の人が言っているように、魔法の引用符の問題を修正してください...

于 2012-05-30T22:41:34.133 に答える
1

私はこの問題を抱えていました、そして私はここで答えを見つけましたhttp://forums.kayako.com/threads/very-odd-piping-problem.11954/

解決策は、 #!/ usr / bin / php -q<?phpの間にスペースブレークを1つだけ残すことです。

進入禁止:

#!/usr/bin/php -q

<?php

正しい方法:

#!/usr/bin/php -q
<?php
于 2015-05-07T22:10:44.577 に答える