2011-04-20 3 views
0

첨부 파일이있는 html 이메일을 보내는 스크립트가 있습니다. 그것은 테스트 및 리눅스 서버에서 개발했지만 윈도우 iis7에 배포되고있다. 문제는 php 메일 (smtp)을 통해 전송되는 첨부 파일이 모든 데이터를 제거하고있는 것입니다. 파일은 ext 및 파일 이름으로 도착하지만 파일 크기는 이제 304 바이트 또는 260 바이트입니다. 이 문제의 원인은 무엇이며 어떻게 해결할 수 있습니까?Linux 서버 (PHP 메일)가 첨부 파일을 보냅니다. Windows IIS (PHP 메일)는 그렇지 않습니다. (그렇지 않으면 메일 작업이 완벽합니다.)

+0

네트워크 문제 일 수 있으며 Windows 서버의 메일 문제 일 수 있으며 첨부 파일 허용 문제 (첨부 파일이 전자 메일에 첨부되는 방식에 따라 다름) 등이있을 수 있습니다. 좀 더 자세한 정보를 제공합니다. 여러분이 메일을 보내고있는 사람이 될 수도 있습니다 ... 예를 들어 이메일 문제가 있고 코드/시스템 문제가 아니었지만 listserv의 관리자가 우리 시스템의 주소에서 특정 listserv를 메일로 보낼 수 없도록했습니다. 얼마나 많은 디버깅 및 코드 검토를 할 수 있는지는 재미있는 일입니다. – Chris

답변

0

PHP는 실제로 메일 자체를 보내지 않습니다. mail에 대한 호출은 시스템 메일러로 전달됩니다. 센드 메일이나 비슷한 것을 사용하는 리눅스 머신에서 테스트했지만 윈도우즈 메일러는 다르다. 정확한 환경에서 테스트하면 디버깅 할 수 있습니다.

0

C : \ windows \ temp에는 읽기 및 쓰기 권한이있는 IIS_IUSRS가 없습니다.

그래서이 문제가 발생하는 경우 :

  1. C로 이동 : \ WINDOWS \ TEMP *
  2. 마우스 오른쪽 버튼으로 클릭하고이 특성을 가져옵니다.
  3. 보안 탭으로 이동하고 (그룹 또는 사용자 이름 :)에서 편집을 클릭하십시오. 다음 화면에서
  4. IIS_IUSRS가 클릭 목록에없는 경우
  5. 은 IIS_IUSRS
  6. 지금 사용 권한을 설정할 수 있어야 입력 텍스트 필드를 볼 다음 화면에서
  7. 를 추가합니다.
  8. 이제 보안 탭에서 iis_usrs를 클릭하고 읽기 &을 클릭하여 실행, 읽기 및 쓰기를 허용하고 허용으로 설정하십시오.

이이 php.ini 파일에 설정 *,이, php.ini 파일 확신 할 수있는 뭔가 다른, 그래서 한 번 확인을 할 수있는 창에서 임시 파일의 기본 설정입니다. 이제 가야합니다. 나는 내 대답이 길을 다른 누군가를 도울 수 있기를 바랍니다.

관련 문제