2016-11-17 3 views
0

this question을 묻는 메시지가 표시되면 의 올바른 방향을 가리키는 누군가가 이미 실행중인 경우 두 번째 스크립트을 전혀 실행할 수 없습니다. 나는 보통 AJAX의 실행에 의존하는 응용 프로그램을 만들PHP - 한 번에 여러 개의 스크립트 (AJAX)

는 PHP 페이지 호출하고, 오늘은 PHP 스크립트에 fwrite()있는 파일에 쓰기를 시도하고 (fread()와 같은 파일을 읽으려고 발견 얻을 AJAX 다른 호출에 대한 진도 피드백 두 번째 스크립트는 첫 번째 완료했을 때만 실행했다.

간단한 "hello"(echo "hello"; exit;)를 에코하려고해도 첫 번째 스크립트가 끝날 때까지 페이지에 아무것도 표시되지 않습니다.

그래서 저는 묻습니다. 이것은 정상적인 구성입니까? 이것은 기본적으로 PHP 설치마다 동일합니까? php.ini의 일부 구성을으로 변경할 수 있습니까?

또는 서버와 관련이 있습니다 (제 경우는 Microsoft IIS 10). 누군가가 좀 빛을 비추 수 있습니까 여러 PHP 스크립트를 실행할 수있는 방법 다른 AJAX 호출 (또는 다른 사람들이 완료되기 전에)?

나는 내 컨텍스트의 설정에 대해 많은 정보를 제공하지 않는다는 것을 알고 있지만 어디를 조사해야할지 모르겠습니다.

시간 내 주셔서 감사합니다.

+0

첫 번째 프로세스가 파일에 쓰기 잠금을 얻고있을 수 있으므로 두 번째 프로세스에서 읽기 전용 모드로 파일을 열어보십시오. –

+0

이러한 모든 측면은 삭제됩니다. 나는 읽기 모드, 추가 모드, 쓰기 모드 등의 파일을 열려고 시도했다. 또한,'echo "hello"; "가 작동하지 않는다는 사실은 파일 잠금과 아무 관련이 없습니다. 어쨌든 당신의 코멘트를 주셔서 감사합니다! – Unapedra

+1

Luis는 수정하려는 파일에 쓰기 잠금이 될 수 있다고 말했습니다. 그러나 파일 (데이터베이스가 아닌)을 사용하는 세션 또는 파일 기반 세션을 사용하는 프레임 워크를 사용하는 다른 가능성은 세션 잠금의 결과 일 수 있습니다. 내 돈은 Luis의 답변 일 것입니다. 당신이하지 말아야 할 확실한 이유가 없다면 아마 파일보다는 데이터베이스를 사용해야 할 것입니다. –

답변

1

Luis는 수정하려는 파일에 쓰기 잠금이 될 수 있다고 말했습니다. 그러나 파일 (데이터베이스가 아닌)을 사용하는 세션 또는 파일 기반 세션을 사용하는 프레임 워크를 사용하는 다른 가능성은 세션 잠금의 결과 일 수 있습니다. 내 돈은 Luis의 답변 일 것입니다. 당신이하지 말아야 할 확실한 이유가 없다면 아마 파일보다는 데이터베이스를 사용해야 할 것입니다.

관련 문제