차례:
PrestaShop은 무료 오픈 소스 전자 상거래 플랫폼입니다. PHP 및 MySQL을 기반으로하며 무료 및 프리미엄 플러그인 및 테마로 확장 할 수 있습니다.
PrestaShop은 직관적 인 관리 인터페이스, 다중 지불 게이트웨이, 다국어, 분석 및보고와 같은 기능을 통해 많은 온라인 판매자에게 적합한 플랫폼입니다.
이 튜토리얼에서는 Ubuntu 18.04 서버에 PrestaShop을 설치하는 방법을 보여줍니다. Nginx를 웹 서버, 최신 PHP 7.2 및 MySQL / MariaDB를 데이터베이스 서버로 사용합니다.
전제 조건
이 학습을 계속하기 전에 다음 전제 조건을 충족하는지 확인하십시오.
- 공개 서버 IP를 가리키는 도메인 이름이 있어야합니다.
example.com
을 사용합니다. Nginx는 다음 지침에 따라 Ubuntu 서버에 설치됩니다. 사용자 정보를 암호화하기 위해 도메인에 설치된 SSL 인증서. 다음 지침에 따라 무료 Let 's Encrypt SSL 인증서를 설치할 수 있습니다.
시스템 패키지를 최신 버전으로 업데이트하고 압축 해제 유틸리티를 설치하십시오.
sudo apt update && sudo apt upgrade
sudo apt install unzip
MySQL 데이터베이스 생성
PrestaShop은 정보를 MySQL 데이터베이스에 저장합니다.
MySQL 또는 MariaDB가 서버에 설치되어 있으면이 단계를 건너 뛸 수 있습니다. 그렇지 않으면 다음을 입력하여 Ubuntu의 기본 리포지토리에서 MySQL 5.7 서버 패키지를 설치하십시오.
sudo apt install mysql-server mysql-client
신규 MySQL 설치의 경우
mysql_secure_installation
명령을 실행하여 MySQL 서버의 보안을 향상시키는 것이 좋습니다.
데이터베이스를 작성하려면 mysql 쉘에 로그인하십시오.
sudo mysql
MySQL 셸 내에서 다음 SQL 문을 실행하여
prestashop
이라는 새 데이터베이스를 만듭니다.
CREATE DATABASE prestashop;
그런 다음
prestashop
이라는 MySQL 사용자 계정을 만들고 다음 명령을 실행하여 사용자에게 필요한 권한을 부여하십시오.
GRANT ALL ON prestashop.* TO 'prestashop'@'localhost' IDENTIFIED BY 'change-with-strong-password';
강력한 비밀번호
change-with-strong-password
를 변경하는 것을 잊지 마십시오.
완료되면 다음을 입력하여 MySQL 콘솔을 종료하십시오.
PHP 설치 및 구성
PHP 7.2는 Ubuntu 18.04의 기본 PHP 버전이며 PrestaShop에서 완벽하게 지원되고 권장됩니다.
다음 명령을 실행하여 PHP 및 모든 필수 PHP 모듈을 설치하십시오.
sudo apt install php7.2-common php7.2-cli php7.2-fpm php7.2-opcache php7.2-gd php7.2-mysql php7.2-curl php7.2-intl php7.2-xsl php7.2-mbstring php7.2-zip php7.2-bcmath php7.2-soap
설치 과정이 완료되면 PHP-FPM 서비스가 자동으로 시작됩니다. 다음을 입력하여 확인할 수 있습니다.
sudo systemctl status php7.2-fpm
출력은 다음과 같아야합니다.
* php7.2-fpm.service - The PHP 7.2 FastCGI Process Manager Loaded: loaded (/lib/systemd/system/php7.2-fpm.service; enabled; vendor preset: enabled) Active: active (running) since Sun 2019-03-24 11:53:33 PDT; 14s ago Docs: man:php-fpm7.2(8) Main PID: 15853 (php-fpm7.2) Status: "Processes active: 0, idle: 2, Requests: 0, slow: 0, Traffic: 0req/sec"
다음
sed
명령을 실행하여 권장 PHP 옵션을 설정하십시오.
sudo sed -i "s/memory_limit =.*/memory_limit = 1024M/" /etc/php/7.2/fpm/php.ini
sudo sed -i "s/upload_max_filesize =.*/upload_max_filesize = 256M/" /etc/php/7.2/fpm/php.ini
sudo sed -i "s/zlib.output_compression =.*/zlib.output_compression = on/" /etc/php/7.2/fpm/php.ini
sudo sed -i "s/upload_max_filesize =.*/upload_max_filesize = 256M/" /etc/php/7.2/fpm/php.ini
sudo sed -i "s/zlib.output_compression =.*/zlib.output_compression = on/" /etc/php/7.2/fpm/php.ini
sudo sed -i "s/max_execution_time =.*/max_execution_time = 18000/" /etc/php/7.2/fpm/php.ini
sudo sed -i "s/;date.timezone.*/date.timezone = UTC/" /etc/php/7.2/fpm/php.ini
sudo sed -i "s/;opcache.save_comments.*/opcache.save_comments = 1/" /etc/php/7.2/fpm/php.ini
PrestaShop 다운로드
이 기사를 작성할 당시 최신 안정 버전의 PrestaShop은 버전
1.7.6.2
입니다.
다음 wget 명령을 사용하여 PrestaShop 다운로드 페이지에서 최신 버전의 PrestaShop을 다운로드하십시오.
cd /tmp
wget
다운로드가 완료되면 PrestaShop 파일을 저장할 디렉토리를 만듭니다.
sudo mkdir -p /var/www/html/example.com
다음으로 PrestaShop 아카이브를 추출하십시오.
unzip prestashop_*.zip
이 아카이브에는 모든 PrestaShop 파일이 포함 된 다른 zip 파일 "prestashop.zip"이 포함되어 있습니다. 파일을 도메인의 문서 루트 디렉토리로 추출하십시오.
sudo unzip prestashop.zip -d /var/www/html/example.com
다음
chown
명령을 사용하여 웹 서버가 사이트의 파일 및 디렉토리에 완전히 액세스 할 수 있도록 올바른 권한을 설정하십시오.
sudo chown -R www-data: /var/www/html
Nginx 구성
이제 우분투 서버에 SSL 인증서가 설치된 Nginx가 있어야합니다. 그렇지 않은 경우이 학습서의 전제 조건을 확인하십시오.
텍스트 편집기를 열고 다음 파일을 작성하십시오.
sudo nano /etc/nginx/sites-available/example.com
/etc/nginx/sites-available/example.com
server { listen 80; listen 443 ssl http2; server_name example.com www.example.com; root /var/www/html/example.com; index index.php; # SSL parameters ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; include snippets/letsencrypt.conf; # Cloudflare / Max CDN fix location ~* \.(eot|otf|ttf|woff(?:2)?)$ { add_header Access-Control-Allow-Origin *; } # Do not save logs for these location = /favicon.ico { auth_basic off; allow all; log_not_found off; access_log off; } location = /robots.txt { auth_basic off; allow all; log_not_found off; access_log off; } # Images rewrite ^/()(-*)?(-+)?/.+.jpg$ /img/p/$1/$1$2$3.jpg last; rewrite ^/()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$1$2$3$4.jpg last; rewrite ^/()()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$3/$1$2$3$4$5.jpg last; rewrite ^/()()()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$3/$4/$1$2$3$4$5$6.jpg last; rewrite ^/()()()()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$3/$4/$5/$1$2$3$4$5$6$7.jpg last; rewrite ^/()()()()()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$3/$4/$5/$6/$1$2$3$4$5$6$7$8.jpg last; rewrite ^/()()()()()()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$3/$4/$5/$6/$7/$1$2$3$4$5$6$7$8$9.jpg last; rewrite ^/()()()()()()()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$3/$4/$5/$6/$7/$8/$1$2$3$4$5$6$7$8$9$10.jpg last; rewrite ^/c/(+)(-*)(-+)?/.+.jpg$ /img/c/$1$2$3.jpg last; rewrite ^/c/(+)(-+)?/.+.jpg$ /img/c/$1$2.jpg last; # AlphaImageLoader for IE and fancybox rewrite ^images_ie/?(+)\.(jpe?g|png|gif)$ js/jquery/plugins/fancybox/images/$1.$2 last; # Web service API rewrite ^/api/?(.*)$ /webservice/dispatcher.php?url=$1 last; # Installation sandbox rewrite ^(/install(?:-dev)?/sandbox)/(.*) /$1/test.php last; #Change this block to your admin folder location /admin_CHANGE_ME { if (!-e $request_filename) { rewrite ^/.*$ /admin_CHANGE_ME/index.php last; } } # File security #.htaccess.DS_Store.htpasswd etc location ~ /\. { deny all; } # Source code directories location ~ ^/(app|bin|cache|classes|config|controllers|docs|localization|override|src|tests|tools|translations|travis-scripts|vendor|var)/ { deny all; } # Prevent exposing other sensitive files location ~ \.(yml|log|tpl|twig|sass)$ { deny all; } # Prevent injection of php files location /upload { location ~ \.php$ { deny all; } } location /img { location ~ \.php$ { deny all; } } # PHP FPM part location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php7.2-fpm.sock; } }
example.com을 PrestaShop 도메인으로 바꾸고“admin_CHANGE_ME”를 관리자 디렉토리로 바꾸는 것을 잊지 마십시오. Prestashop 루트 디렉토리의 내용을 나열하여 디렉토리 이름을 찾을 수 있습니다.
sudo ls -l /var/www/html/example.com | grep admin
또한 SSL 인증서 파일의 올바른 경로를 사용해야합니다. 이 구성에 사용 된 스 니펫은이 안내서에서 작성됩니다.
Nginx 서비스를 다시 시작하기 전에 구문 오류에 대한 구성을 확인하십시오.
sudo nginx -t
출력은 다음과 같아야합니다.
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
마지막으로 다음을 입력하여 Nginx 서비스를 다시 시작하십시오.
PrestaShop 설치
PrestaShop이 다운로드되고 서버 구성이 완료되었으므로 웹 인터페이스를 통해 설치를 완료 할 수 있습니다.
브라우저를 열고 도메인을 입력하면 다음과 유사한 화면이 나타납니다.
보안상의 이유로 설치 디렉토리를 삭제해야합니다. 그렇게하려면 터미널로 돌아가서 다음
rm
명령을 입력하십시오.
sudo rm -rf /var/www/html/example.com/install
PrestaShop 관리 대시 보드에 액세스하려면“상점 관리”버튼을 클릭하십시오. 이메일과 비밀번호를 입력하면 관리 대시 보드로 리디렉션됩니다.
여기에서 PrestaShop 설치 사용자 정의를 시작하고 새 제품을 추가 할 수 있습니다.
결론
Ubuntu 18.04 서버에 PrestaShop을 성공적으로 설치했습니다. PrestaShop Documentation은 PrestaShop 설치를 관리하는 방법에 대한 자세한 정보를 제공하는 좋은 출발점입니다.
우분투 prestashop mysql PHP nginx 전자 상거래우분투 18.04에 아나콘다를 설치하는 방법

Anaconda는 대규모 데이터 처리, 예측 분석 및 과학 컴퓨팅에 사용되는 가장 널리 사용되는 Python 데이터 과학 및 기계 학습 플랫폼입니다. 이 튜토리얼은 Ubuntu 18.04에서 Anaconda Python Distribution을 다운로드하고 설치하는 단계를 안내합니다.
우분투 18.04에 안드로이드 스튜디오를 설치하는 방법

Android Studio는 모든 기능을 갖춘 크로스 플랫폼 IDE로 모든 유형의 Android 기기에서 애플리케이션을 빌드 할 수 있도록 도와줍니다. 이 튜토리얼은 Ubuntu 18.04에 Android Studio를 설치하는 방법을 설명합니다.
우분투 18.04에 Apache Cassandra를 설치하는 방법

Apache Cassandra는 단일 장애 지점이없는 무료 오픈 소스 NoSQL 데이터베이스입니다. 이 튜토리얼에서는 Ubuntu 18.04에 Apache Cassandra를 설치하는 방법을 보여줍니다.