"Bulletphp 튜토리얼"의 두 판 사이의 차이

잔글 (봇: 자동으로 텍스트 교체 (-==참고 자료== +==참고==))
잔글 (봇: 자동으로 텍스트 교체 (-</source> +</syntaxhighlight>, -<source +<syntaxhighlight ))
 
8번째 줄: 8번째 줄:
==index.php 작성==
==index.php 작성==
* 보통 웹루트폴더([[DOCUMENT_ROOT]])에 설정하는데, 본 실습에서는 DOCUMENT_ROOT/myapi 폴더에 설정한다.<ref>DOCUMENT_ROOT에 설정하려면 https://github.com/vlucas/bulletphp 에 있는 .htaccess 설정파일 참고</ref>
* 보통 웹루트폴더([[DOCUMENT_ROOT]])에 설정하는데, 본 실습에서는 DOCUMENT_ROOT/myapi 폴더에 설정한다.<ref>DOCUMENT_ROOT에 설정하려면 https://github.com/vlucas/bulletphp 에 있는 .htaccess 설정파일 참고</ref>
<source lang='console'>
<syntaxhighlight lang='console'>
root@zetawiki:~# cd /var/www/html
root@zetawiki:~# cd /var/www/html
root@zetawiki:/var/www/html# mkdir myapi
root@zetawiki:/var/www/html# mkdir myapi
root@zetawiki:/var/www/html# cd myapi/
root@zetawiki:/var/www/html# cd myapi/
root@zetawiki:/var/www/html/myapi# vi index.php
root@zetawiki:/var/www/html/myapi# vi index.php
</source>
</syntaxhighlight>
<source lang='php'>
<syntaxhighlight lang='php'>
<?php
<?php
require 'bulletphp/autoload.php';
require 'bulletphp/autoload.php';
22번째 줄: 22번째 줄:
});
});
echo $app->run(new Bullet\Request());
echo $app->run(new Bullet\Request());
</source>
</syntaxhighlight>


==아파치 rewrite 설정==
==아파치 rewrite 설정==
28번째 줄: 28번째 줄:
:(CentOS) /etc/httpd/conf/httpd.conf
:(CentOS) /etc/httpd/conf/httpd.conf
:(우분투) /etc/apache2/sites-enabled/000-default.conf<ref>우분투12는 /etc/apache2/sites-enabled/000-default</ref>
:(우분투) /etc/apache2/sites-enabled/000-default.conf<ref>우분투12는 /etc/apache2/sites-enabled/000-default</ref>
<source lang='aconf'>
<syntaxhighlight lang='aconf'>
<Directory "/var/www/html/myapi">
<Directory "/var/www/html/myapi">
     AllowOverride all
     AllowOverride all
</Directory>
</Directory>
</source>
</syntaxhighlight>
*[[아파치 재시작]]
*[[아파치 재시작]]
<source lang='console'>
<syntaxhighlight lang='console'>
root@zetawiki:/var/www/html/myapi# /etc/init.d/apache2 restart
root@zetawiki:/var/www/html/myapi# /etc/init.d/apache2 restart
Stopping httpd:                                            [  OK  ]
Stopping httpd:                                            [  OK  ]
Starting httpd:                                            [  OK  ]
Starting httpd:                                            [  OK  ]
</source>
</syntaxhighlight>
*[[.htaccess]] 작성
*[[.htaccess]] 작성
<source lang='console'>
<syntaxhighlight lang='console'>
root@zetawiki:/var/www/html/myapi# vi .htaccess
root@zetawiki:/var/www/html/myapi# vi .htaccess
</source>
</syntaxhighlight>
<source lang='aconf'>
<syntaxhighlight lang='aconf'>
RewriteEngine On
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?u=$1 [L,QSA]
RewriteRule ^(.*)$ index.php?u=$1 [L,QSA]
</source>
</syntaxhighlight>


==테스트==
==테스트==
<source lang='console'>
<syntaxhighlight lang='console'>
root@zetawiki:/var/www/html/myapi# cd
root@zetawiki:/var/www/html/myapi# cd
root@zetawiki:~# curl http://localhost/myapi/index.php
root@zetawiki:~# curl http://localhost/myapi/index.php
Not Found
Not Found
</source>
</syntaxhighlight>
<source lang='console'>
<syntaxhighlight lang='console'>
root@zetawiki:~# curl http://localhost/myapi/
root@zetawiki:~# curl http://localhost/myapi/
Not Found
Not Found
</source>
</syntaxhighlight>
<source lang='console'>
<syntaxhighlight lang='console'>
root@zetawiki:~# curl http://localhost/myapi/hello
root@zetawiki:~# curl http://localhost/myapi/hello
안녕, 친구들!
안녕, 친구들!
</source>
</syntaxhighlight>
<source lang='console'>
<syntaxhighlight lang='console'>
root@zetawiki:~# curl http://localhost/myapi/world
root@zetawiki:~# curl http://localhost/myapi/world
Not Found
Not Found
</source>
</syntaxhighlight>


==같이 보기==
==같이 보기==

2020년 11월 2일 (월) 02:57 기준 최신판

Bullet PHP 마이크로프레임워크 시작하기
Bulletphp 튜토리얼

1 사전 작업[ | ]

2 index.php 작성[ | ]

  • 보통 웹루트폴더(DOCUMENT_ROOT)에 설정하는데, 본 실습에서는 DOCUMENT_ROOT/myapi 폴더에 설정한다.[1]
root@zetawiki:~# cd /var/www/html
root@zetawiki:/var/www/html# mkdir myapi
root@zetawiki:/var/www/html# cd myapi/
root@zetawiki:/var/www/html/myapi# vi index.php
<?php
require 'bulletphp/autoload.php';
$app = new Bullet\App();
$app->path('/hello', function($request) {
	return "안녕, 친구들!";
});
echo $app->run(new Bullet\Request());

3 아파치 rewrite 설정[ | ]

(CentOS) /etc/httpd/conf/httpd.conf
(우분투) /etc/apache2/sites-enabled/000-default.conf[2]
<Directory "/var/www/html/myapi">
    AllowOverride all
</Directory>
root@zetawiki:/var/www/html/myapi# /etc/init.d/apache2 restart
Stopping httpd:                                            [  OK  ]
Starting httpd:                                            [  OK  ]
root@zetawiki:/var/www/html/myapi# vi .htaccess
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?u=$1 [L,QSA]

4 테스트[ | ]

root@zetawiki:/var/www/html/myapi# cd
root@zetawiki:~# curl http://localhost/myapi/index.php
Not Found
root@zetawiki:~# curl http://localhost/myapi/
Not Found
root@zetawiki:~# curl http://localhost/myapi/hello
안녕, 친구들!
root@zetawiki:~# curl http://localhost/myapi/world
Not Found

5 같이 보기[ | ]

6 주석[ | ]

  1. DOCUMENT_ROOT에 설정하려면 https://github.com/vlucas/bulletphp 에 있는 .htaccess 설정파일 참고
  2. 우분투12는 /etc/apache2/sites-enabled/000-default

7 참고[ | ]

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}