sysadm.kr/test.php?test_id=aaa

이렇게 했을때

test.php에서

<? echo $test_id ?> 하면 aaa가 찍혀야 되는데 안찍히는 이유는 php 5.5 버전에는 register_globals 옵션이 아예 존재하지 않기 때문이며

이런 경우 $test_id 대신 $_GET['test_id'] 로 변경하면 화면에 변수값이 출력된다.


1. 소스 Download

URL : http://sourceforge.net/projects/eaccelerator/files/eaccelerator/

2. 설치

# tar xvfz eaccelerator-0.9.6.1.tar.bz2
# cd eaccelerator-0.9.6.1
# PHP_PREFIX/bin/phpize
# ./configure --enable-eaccelerator=shared --with-php-config=PHP_PREFIX/bin/php-config
# make
# make install
# cd /var/tmp
# mkdir eaccelarator
# chmod 777 eaccelarator/

3. php.ini 파일 하단에 아래 항목 추가

[eAccelerator]
extension_dir="MAKE INSTALL시 나오는 모듈 경로"
extension=eaccelerator.so
eaccelerator.shm_size="16"
eaccelerator.cache_dir="/var/tmp/eaccelerator"
eaccelerator.enable="1"
eaccelerator.optimizer="1"
eaccelerator.check_mtime="1"
eaccelerator.debug="0"
eaccelerator.filter=""
eaccelerator.shm_max="0"
eaccelerator.shm_ttl="0"
eaccelerator.shm_prune_period="0"
eaccelerator.shm_only="0"
eaccelerator.compress="1"
eaccelerator.compress_level="9"

'Works > 설치매뉴얼' 카테고리의 다른 글

PHP 7.4 컴파일 (CentOS 7에서)  (0) 2021.08.17
Apache에 mod_cband 설치  (0) 2016.06.24
JDK(java) & tomcat 설치 총정리  (0) 2016.01.11
php pdo-mysql 확장 모듈 설치  (0) 2015.10.28
Apache 에 GeoIP 모듈설치  (0) 2015.10.28

gz 압축포맷은 기본적으로 CentOS 계열 리눅스 운영체제에 기본적으로 내포되어 있으며 이를 확인하려면

[root@sysadm ~]# rpm -qa | grep gzip
gzip-1.3.5-13.el5.centos

위 명령 실행결과 gzip 프로그램이 이미 설치되어 있음을 확인 할 수 있으며

미설치에는 yum -y install gzip 을  실행하면 된다.

1. gz 압축풀기

gzip -d filename.gz

gzip에 옵션 -d 를 주면 되는데 -d는 decompress의 줄임 표현이다.

* 압축이 해제되면 기존 압축파일은 자동으로 제거하고 압축해제된 파일만 남게 된다.

2. gz 압축하기

예를 들어서 222.jpg를 gz으로 압축한다면 아래와 같은 명령어를 사용하면 된다.

gzip 222.jpg

수행 결과로 222.jpg는 없어지고, 압축된 222.gz 파일이 생성된다.

gz은 여러개의 파일을 하나로 압축하는 용도가 아니며

여러개의 파일을 압축하려면 7z, zip, tar 압축을 사용하는 것을 권장한다.


제로보드4를 MySQL 5.5 버전 이상환경에 설치시 '관리자 테이블 생성 실패' 메시지가 나오면 이는 제로보드4의 핵심파일인

schema.sql 파일 내의 SQL 문법의 오류 때문이다.

schema.sql 파일 139라인에 보면 no int(11) default '0' not null auto_increment primary key, 가 있는데 이를 아래처럼

no int(11) not null auto_increment primary key, 로 변경한다.

또한 '받은 쪽지 또는 보낸 쪽지 테이블 생성 실패'가 뜨면 받은 쪽지의 경우 318라인의

no int(20) default '0' not null auto_increment primary key , 를 no int(20) not null auto_increment primary key ,

보낸쪽지의 경우 332라인의 no int(20) default '0' not null auto_increment primary key , 를

no int(20) not null auto_increment primary key , 로 변경하면 설치는 큰문제 없이 진행될 것이다.

하지만 설치 이후 게시판 생성시 '게시판의 메인 테이블 생성' 가 발생할수 있기 때문에 schema.sql 파일의 create table 쿼리문 중 auto_increment

와 default '0' 가 함께 정의된 라인을 모두 찾아 default '0' 를 제거해주면 게시판이 정상 생성되는 것을 확인할 수 있다.

요약하자면 에러 메시지 없이 한번에 설치를 진행하기 위해서는 schema.sql 파일의 default '0' 를 모두 제거해주면 되는 것이다.

아래는 위의 방법으로 수정한 제로보드 4 schema.sql 파일이니 혹시 문제 발생시 첨부된 schema.sql 파일로 덮어쓰기 하면 된다.

schema.sql



[쉘 프로그래밍을 위한 sed 활용 예제 정리]

1. 특정 패턴 아래 라인 삭제 또는 추가

sed -i '/apple.*/{n;d}' abc.txt  // apple패턴아래 1줄 삭제

[결과] cat abc.txt
apple
banana

sed -i 's,\(apple.*\),\1\ngrape,g' abc.txt  // apple패턴아래 grape 추가

[결과] cat abc.txt
apple
grape
ornage
banana

[원본]abc.txt 의 내용

apple
orange
banana


2. 개행문자 (newline) 이 2개 연속으로 있을 때를 이를 1개로 변경하는 명령

sed -i '/^$/N;/^\n$/D' filename

filename 의 내용중 newline 이 2개 연속으로 있을때 이를 1개로 치환하며  -i 옵션은 변경된 내용을 출력하지 않고 filename 에 저장


3. sed 명령어에 변수사용

sed "s/abc/$dma/g" 와 같이 큰따옴표(") 안에 변수를 사용하면 된다.
sed 's/abc/$dma/g' 명령어는 abc 문자를 $dma 라는 문자로 바꾸라는 뜻이다.

즉, 작은따음표의 경우에는 $dma를 변수 dma로 인식하지 않고 문자열 $dma로 인식한다. 

 

4. 특정패턴 위/아래 에 내용 추가

sed "/찾을패턴/i추가할패턴" 파일명  (상단에 추가)
sed "/찾을패턴/a추가할패턴" 파일명 (하단에 추가)

 

5. 특정 라인 맨 앞/뒤 내용 추가

 

sed "행번호s/^/문자열/" 파일명 (라인 맨 앞 추가)
sed "행번호s/$/문자열/" 파일명 (라인 맨 뒤 추가)

 

6. 변수 값에 슬래쉬 (/) 가 포함된 값을 치환 할 때

[예제]
var="/home/user1/public_html" 변수 값 앞에 주석 (#) 을 붙인다고 하면
sed -i "s~$var~#$var~g" "파일명"

 

7. 문자열 앞/뒤 공백 제거

's/^ *//g' : 앞 공백 제거
's/ *$//g' : 뒤 공백 제거

[응용] 문자열 맨 앞/뒤 공백 한번에 제거

sed -e 's/^ *//g' -e 's/ *$//g' > test.txt