Windows에서 Apache와 php7 연동

  • 작업 조건
    • Windows 10
    • php7 for Windows
    • VC13 package
  • 작업 내용
    • Windows 10에서 Apache와 php7 모듈을 연동한다.
  • 작업 과정
    • Non Thread Safe1. C:\Apache24\conf\httpd.conf 파일 실행 후 편집2. PHPIniDir “php가 설치된 경로(ex C:/php/)”
      LoadModule php7_module “php가 설치된 경로/apache2_4.dll”
      AddType application/x-httpd-php .html .php 를 End Line에 추가합니다.
    • Thread Safe
      1.C:\Apache24\conf\httpd.conf 파일 실행 후 편집
      2. LoadFile “php가 설치된 경로/php7ts.dll”
      PHPIniDir “php가 설치된 경로(ex C:/php/)”
      LoadModule php7_module “php가 설치된 경로/apache2_4.dll”
      AddType application/x-httpd-php .html .php 를 End Line에 추가합니다.
    • 선택 사항
    • 작업 과정 중 참고사항
    • 작업 중 발생한 문제 해결
  • 작업과 관련된 주제
  • 참고 문헌
Advertisements

php 메모리 부족 문제 해결

  • 작업 조건
    • Linux
    • PHP의 메모리 제한 기본값은 128MB이다.
    • 메모리 부족으로 인한 오류 발생
      • Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 32 bytes) in /var/www/html/open-flash-chart/php-ofc-library/ofc_scatter.php on line 5
  • 작업 내용
    • php 메모리 부족 해결
  • 작업 과정
    • 1 설정값 확인

      [root@zetawiki ~]# cat /etc/php.ini | grep memory_limit
      memory_limit = 128M
      

      2 조치방법 1 (PHP 소스)

      PHP 소스에서 아래 명령어를 수행하면 그 PHP 페이지 실행에 한하여 메모리 제한이 변경된다.

      • 메모리 제한 늘리기
      ini_set('memory_limit','512M');
      
      • 메모리 무제한으로 풀기
      ini_set('memory_limit','-1');
      

      3 조치방법 2 (PHP 설정)

      PHP 설정파일에서 메모리 제한 수정하기. 모든 PHP 파일에 적용되며, 적용 시 Apache 재시작이 필요하다.

      vi /etc/php.ini
      
      ; Maximum amount of memory a script may consume (128MB)
      ; http://php.net/memory-limit
      memory_limit = 128M
      
      ; Maximum amount of memory a script may consume (128MB)
      ; http://php.net/memory-limit
      memory_limit = 512M
      

      memory_limit를 찾아 파라미터를 적절한 값으로 수정하고 저장한다. 수정된 php.ini가 적용되려면 httpd 재시작이 필요하다.

      [root@zetawiki ~]# service httpd restart
      Stopping httpd:                                            [  OK  ]
      Starting httpd:                                            [  OK  ]
    • 선택 사항
    • 작업 과정 중 참고사항
    • 작업 중 발생한 문제 해결
  • 작업과 관련된 주제
  • 참고 문헌

 

Apache 2.4.2 php7 모듈 추가

1. apache24\conf\httpd.conf  파일 수정

맨 마지막 라인에 아래와 같이 모듈 추가 텍스트 삽입

  • #php7
  • LoadModule php7_module “C:/my_php_directory/php7apache2_4.dll”
    AddHandler application/x-httpd-php .php
  • # configure the path to php.ini
    PHPIniDir “C:/my_php_directory/”
    <FilesMatch \.php$>
    SetHandler application/x-httpd-php
    </FilesMatch>

2. php 설정
압축 푼 php폴더에서 php.ini-development 를 복사해서 php.ini 파일을 생성한다.

php.ini 파일 수정

  • extension_dir = “C:/my_php_directory/ext”  추가해준다.

Redmine 3.4.3 설치

  • 작업 조건
    • Windows
  • 작업 내용
    • Windows localhost 서버에 Redmine 설치
  • 작업 과정
    • 1.Ruby 설치(2.3.3)

      다운로드: http://rubyinstaller.org/downloads/

      redmine_install_1

      Ruby 설치 시 실행 경로에 대한 환경 변수 설정을 꼭 추가한다.

      설치가 완료되면 실행→cmd 명령프롬프트를 실행시킨 뒤 c:\Ruby233-x64\bin으로 이동해서 아래의 명령어를 해주도록 한다.

      redmine_install_2.jpg

       


      2.DevKit 설치


      아까전 Ruby를 받은 다운로드 사이트로 들어가면 아래에 Development Kit with ruby 2.3.3이 호환되는 64bit버전을 다운받자

      • 다운로드 받은 DevKit폴더를 생성하고 압축을 푼 뒤 C:DevKit 으로 옮긴다.
      • 명령 프롬프트를 실행하고 C:\Devkiit으로 이동한뒤 ruby dk.rb init 을 입력한다. 그러면 다음 아래와 같이 완료되었다는 표시와 함께 config.yml 파일을 검토해야 한다고 나온다.

      redmine_install_3.jpg

      • C:\devkit으로 이동하여 config.yml 파일을 Notepad나 에디터 편집기로 아래의 텍스트를 추가한다.(devkit의 ruby 루트 경로 설정)
       – C:/Ruby200-x64
      • 다시 명령 프롬프트로 이동하여 ruby dk.rb install 을 입력한다. 아래와 같이 화면에 나오는지 확인하기 바란다.

       

      • redmine_install_4.jpg
      • 다음은 환경 변수를 설정해 줘야 한다. 제어판 → 시스템 속성 → 고급 → 환경변수 → PATH 편집을 누른뒤 → C:\Devkit\Bin;을 추가해준다.
       redmine_install_5

       


      3.RedMine 설치

       

      레드마인을 다운받아 설치할 차례이다. 3.4.3 64bit버전을 받아서 설치한다.

      • redmine-3.4.4.zip의 압축을 풀고 C:\Redmine-3.4.3 경로에 설치해주자.
      • 먼저 GEM을 설치해야 한다. 명령프롬프트를 실행시키고 C:\Redmine-3.4.3 폴더로 이동한 뒤 아래의 명령어를 입력한다.
      • bundle install –without development test postgresql sqlite rmagick

      redmine_install_6.PNG

      • 위의 결과가 나왔다면 redmine의 경우 mysql2를 사용해야 하므로 설치해줘야 한다.
      • gem install mysql2를 실행시켜 mysql2를 설치한다.

      redmine_install_7.PNG

      • MySQL을 설치한 Program Files\MySQL\MySQL Connector.C 6.1\Lib 폴더에 있는 libmysql.dll 파일을 복사하여 C:\Ruby200-x64\bin 폴더에 붙여넣어준다.
      • 그 후 C:\redmine-3.0.3\config 폴더의 database.yml-sample이라는 파일을 찾아 database.yml으로 이름을 변경 시킨뒤 파일을 열어준다. Notepad++로 파일을 열어주고 production을 제외한 나머지는 모두 주석처리한다. 그리고 비밀번호 부분을 입력해준다.
       adapter: mysql2

      database : redmine

      host : localhost

      username : root

      password: “” #MySQL 설치 시 입력했던 비밀번호를 넣어준다

      encoding: utf8

      • 명령 프롬프트에서 redmine 폴더로 돌아와 session을 생성해주어야 한다. 아래의 명령어를 입력한다.
      • rake generate_secret_token을 먼저 입력한 뒤 rake db:migrate RAILS_ENV=production을 입력한다.

      redmine_install_8

      • 다음으로 redmine을 한글로 설정하기 위해서 rake redmine:load_default_data RAILS_ENV=production을 입력하고 아래의 언어 선택 부분이 나오면 ko를 입력해준다.

      redmine_install_9.PNG

      • 마지막으로 rails 서버를 가동시킨다.
      • bundle exec rails server webrick -e production을 입력해서 서버를 실행시켜야 한다.

      redmine_install_10

      • 크롬에서 localhost:3000을 입력하면 웹 페이지에 다음과 같은 화면을 볼 수 있을 것이다. Redmine의 첫 아이디와 패스워드는 admin/admin으로 로그인이 가능하다.

      redmine_install_11.PNG

    • 선택 사항
    • 작업 과정 중 참고사항
    • 작업 중 발생한 문제 해결
  • 작업과 관련된 주제
  • 참고 문헌