* Nginx + MariaDB, PHP 7.3으로 텍스트큐브 설치하기
* nginx 설치
$ sudo apt-get install nginx
$ sudo service nginx start
* php 7.3 설치
$ sudo apt install php7.3-fpm
$ sudo apt install php7.3-common php7.3-mysql php7.3-xml php7.3-xmlrpc php7.3-curl php7.3-gd php7.3-imagick php7.3-cli php7.3-dev php7.3-imap php7.3-mbstring php7.3-opcache php7.3-soap php7.3-zip php7.3-intl -y
* 텍스트큐브 설치
$ wget https://github.com/Needlworks/Textcube/archive/v1.10.10.tar.gz -P /home/pi/
$ tar -xvzf /home/pi/v1.10.10.tar.gz -C /home/pi
* 디렉토리 접근권한 부여
$ chmod 0777 /home/pi/tc
$ chmod 0777 /home/pi/tc/skin/blog
* sites-available에 www.example.com 파일 추가
$ sudo nano /etc/nginx/sites-available/www.example.com
server {
listen 80;
root /home/pi/tc;
server_name www.example.com;
index index.php index.html;
location / {
try_files $uri $uri/ =404;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.3-fpm.sock;
}
}
* sites-enabled에 심볼릭링크 추가
$ sudo ln -s /etc/nginx/sites-available/www.example.com /etc/nginx/sites-enabled/www.example.com
* mysql 셋업
$ sudo apt-get install mariadb-server
$ sudo mysql -u root
MariaDB [(none)]> use mysql
CREATE DATABASE tc;
SHOW DATABASES;
CREATE USER 'tc'@'localhost' IDENTIFIED BY 'password';
USE mysql;
SELECT user, host FROM user;
GRANT ALL PRIVILEGES ON tc.* TO tc@localhost IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
SHOW GRANTS FOR tc@localhost
* 웹사이트에 접속해서 텍스트큐브 설정을 한다.
중간에 Rewrite 관련 에러가 나오는데 ‘사용하지 않음’을 체크하고 계속 진행한다.
* nginx.conf에 아래와 같이 rewrite 항목을 추가한다.
$ sudo systemctl stop nginx
$ sudo nano /etc/nginx/sites-available/www.example.com
server {
location / {
set $rewrite_base '';
if (!-f $request_filename) {
rewrite ^(thumbnail)/([0-9]+/.+)$ cache/$1/$2;
}
if ($request_filename ~* ^(cache)+/+(.+[^/])\.(cache|xml|txt|log)$) {
return 403;
}
if (-d $request_filename) {
rewrite ^(.+[^/])$ $1/;
}
rewrite ^(.*)$ $rewrite_base/rewrite.php last;
}
}
$ sudo systemctl start nginx
* PHP 7.3 이상에서 관리자 인증이 잘못되는 문제 깁기
https://pat.im/1199
* lets encrypt 인증서 작성
sudo certbot certonly –standalone -d www.example.com
sudo certbot certonly --webroot -w /home/pi/tc -d www.example.com
* phpmyadmin 관련
- phpmyadmin 설치
$ sudo apt-get install phpmyadmin
web server는 선택하지 않고 넘기기
$ sudo ln -s /usr/share/phpmyadmin/ /var/www/html
http://IP/phpmyadmin/index.php로 접속
- phpmyadmin 업그레이드
https://devanswers.co/manually-upgrade-phpmyadmin/
- php 업로드 용량변경
https://conory.com/blog/44009
- phpmyadmin에서 업로드 용량 변경
https://www.keycdn.com/support/413-request-entity-too-large
- nginx Timeout 늘리기
https://blog.lael.be/post/9251
- Posted
- Filed under 개발/Linux