在linux centos上安裝mysql 8

如何在CentOS 2.1上安裝Magento 7

如何在CentOS 2.1上安裝Magento 7

Magento是基於PHP Zend Framework的電子商務網站的開源商店(電子商務軟件)和內容管理系統。 Magento應用了面向對象編程和MVC(模型 - 視圖 - 控制器)體系結構的約定,並使用MySQL / MariaDB作為數據庫。 由Varien Inc.開發的2008軟件已經開發出來。在過去的幾年中,Magento已經成為電子商務軟件的可信平台,為全球的在線業務提供支持。

在本教程中,我將引導您通過Magento 2.1安裝。 我們將使用Nginx和Php2.1-fpm和MySQL作為數據庫來安裝Magento 7.0。 為此,我將使用啟用了SELinux的CentOS 7服務器。

步驟1 - 安裝Nginx

在這一步中,我們將從epel-repository中安裝Nginx。 Epel默認不可用,所以我們需要在安裝Nginx之前安裝epel-repository。

用這個yum命令安裝epel-repository。

yum -y安裝epel-release

現在我們可以從epel-repository安裝Nginx。

yum -y安裝nginx

安裝完成後,啟動Nginx並將其添加到引導時啟動。

systemctl啟動nginx
systemctl啟用nginx

Nginx在端口80上啟動,您可以使用下面的netstat命令檢查。

netstat -plntu

在CentOS 7上安裝Nginx

如果您看到結果'找不到命令',您可以像這樣安裝net-tools。

yum -y安裝net-tools

步驟2 - 安裝和配置PHP-FPM

在本教程中,我們將使用PHP-FPM 7進行Magento安裝。 我將使用Webtatic存儲庫中的PHP 7包。

下載並向系統添加新的webtatic存儲庫。

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

現在運行下面的命令來安裝PHP-FPM7以及Magento安裝所需的所有軟件包和擴展。

yum -y安裝php70w-fpm php70w-mcrypt php70w-curl php70w-cli php70w -mysql php70w-gd php70w-xsl php70w-json php70w-intl php70w-pear php70w-devel php70w-mbstring php70w-zip php70w-soap

PHP-FPM7安裝完成後,我們需要對其進行配置。 我們將配置php.ini文件和php-fpm配置'www.conf'文件。

用vim編輯php.ini。

vim /etc/php.ini

取消註釋cgi.fix_pathinfo行762並將值更改為0。

cgi.fix_pathinfo = 0

配置內存限制,最大執行時間並啟用zlib輸出壓縮,請確保按如下所示設置值。

memory_limit的= 512M
max_execution_time僅僅= 1800
zlib.output_compression =開

取消註釋會話路徑目錄並更改目錄,如下所示。

session.save_path =“/ var / lib / php / session”

保存並退出。

接下來,用vim命令編輯php-fpm配置文件www.conf。

vim /etc/php-fpm.d/www.conf

PHP-FPM7將在'nginx'用戶和組下運行,將值更改為'nginx'用於用戶和組行。

user = nginx
group = nginx

我們將在套接字文件下運行php-fpm,而不是服務器端口。 將listen行的值更改為套接字文件的路徑。

listen = /var/run/php/php-fpm.sock

套接字文件需要由'nginx'用戶和組擁有,取消註釋listen行並更改值,如下所示。

listen.owner = nginx
listen.group = nginx
listen.mode = 0660

最後,取消註釋PHP-FPM環境行366-370。

env [HOSTNAME] = $ HOSTNAME
env [PATH] = / usr / local / bin:/ usr / bin:/ bin
env [TMP] = / tmp
env [TMPDIR] = / tmp
env [TEMP] = / tmp

保存並退出。

接下來,為會話路徑和php sock文件位置創建一個新目錄。 然後將所有者更改為“nginx”用戶和組。

為會話路徑創建一個新目錄。

mkdir -p / var / lib / php / session /
chown -R nginx:nginx / var / lib / php / session /

為php-fpm套接字文件位置創建一個新目錄。

mkdir -p / run / php /
chown -R nginx:nginx / run / php /

PHP-FPM7配置完成後,現在啟動守護進程並使其在啟動時使用下面的systemctl命令啟動。

systemctl啟動php-fpm
systemctl啟用php-fpm

當沒有錯誤時,可以使用下面的命令來檢查php-fpm是否在套接字文件下運行。

netstat -pl | grep php-fpm.sock

在CentOS 7上安裝並配置PHP-FPM7

步驟3 - 安裝MySQL 5.7 Server

Magento 2.1需要當前的MySQL版本,您可以使用MySQL 5.6或5.7進行安裝。 在本教程中,我們將使用可從官方MySQL存儲庫安裝的MySQL 5.7。 所以我們需要首先添加新的MySQL存儲庫。

下載並添加用於MySQL 5.7安裝的新MySQL存儲庫。

yum localinstall https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm

現在使用下面的yum命令從MySQL存儲庫安裝MySQL 5.7。

yum安裝mysql-community-server

安裝完成後,啟動mysql並將其添加到引導時啟動。

systemctl啟動mysqld
systemctl啟用mysqld

MySQL 5.7已經安裝了一個默認的root密碼,它存儲在mysqld.log文件中。 使用grep命令查看MySQL 5.7的默認密碼。 運行下面的命令。

grep'temporary'/var/log/mysqld.log

在CentOS 5.7上安裝和配置MySQL 7

現在您看到當前的MySQL root密碼,您應該更改默認密碼。

用root和默認密碼連接到mysql shell。

mysql -u root -p
類型默認密碼

使用以下查詢更改默認的root密碼。 我將使用新密碼'[電子郵件保護]' 這裡。 請選擇一個安全密碼。

ALTER USER'root'@'localhost'由'[電子郵件保護]';
沖洗特權;

更改默認的MySQL根密碼

默認的MySQL根密碼已被更改。 接下來,我們需要為Magento安裝創建一個新用戶和一個新數據庫。

我們將創建一個名為'magentodb'的新數據庫和一個密碼為''的新用戶'magentouser'。[電子郵件保護]'。 然後,將數據庫的所有特權授予新用戶。 運行下面的mysql查詢。

創建數據庫magentodb;
創建由“[電子郵件保護]';
將magentodb。*的所有特權授予“[電子郵件保護]';
沖洗特權;

為magento安裝創建新用戶和數據庫

MySQL 5.7的安裝和配置已經完成,並且已經創建了一個用於Magento安裝的數據庫。

步驟4安裝和配置Magento

在此步驟中,我們將開始安裝和配置Magento。 對於Web根目錄,我們將使用'/ var / www / magento2'目錄。 我們需要PHP編寫器來安裝Magento包。

安裝PHP Composer

我們將使用Composer進行PHP包依賴項安裝。 使用下面的curl命令安裝composer。

curl -sS https://getcomposer.org/installer | sudo php - -install-dir = / usr / bin -filename = composer

安裝完成後,您可以檢查作曲家版本,如下所示。

作曲家-v

在CentOS 7上安裝PHP Composer

PHP Composer已安裝。

下載並提取Magento

轉到'/ var / www'目錄並使用wget命令下載Magento代碼。

cd / var / www /
wget https://github.com/magento/magento2/archive/2.1.zip

安裝與yum解壓縮。

yum -y安裝解壓

解壓縮Magento代碼並將目錄重命名為“magento2”目錄。

解壓縮2.1.zip
mv magento2-2.1 magento2

安裝PHP依賴項

轉到magento2目錄,並使用composer命令安裝所有Magento依賴項。

cd magento2
作曲家安裝-v

用Composer安裝Magento依賴項

等待PHP Dependency安裝完成。

配置Magento虛擬主機

轉到Nginx目錄並在'conf.d'目錄中創建名為'magento.conf'的新虛擬主機配置文件。

cd / etc / nginx /
vim conf.d / magento.conf

粘貼下面的虛擬主機配置。

上游fastcgi_backend {服務器Unix:/run/php/php-fpm.sock; }服務器{監聽80; server_name magento.hakase-labs.com; 設置$ MAGE_ROOT / var / www / magento2; 設置$ MAGE_MODE開發人員; 包括/var/www/magento2/nginx.conf.sample; }

保存並退出。

現在測試配置。 如果沒有錯誤,請重新啟動Nginx服務。

nginx -t
systemctl重新啟動nginx

創建新的magento虛擬主機

安裝Magento 2.1

轉到magento2目錄在命令行上安裝Magento。

cd / var / www / magento2

運行下面的命令,確保你有正確的配置。 下面將解釋您需要更改的值。

bin / magento setup:install -backend-frontname =“adminlogin”
–key=”biY8vdWx4w8KV5Q59380Fejy36l6ssUb”
-db主機=“localhost”的
-db-NAME =“magentodb”
-db用戶=“magentouser”
–db-password =”[電子郵件保護]
-language =“EN_US”
-currency =“USD”
-timezone =“美國/紐約”
-use-重寫= 1
-use安全= 0
鹼基-URL =“http://magento.hakase-labs.com”
-base-URL安全=“https://magento.hakase-labs.com”
-admin用戶管理用戶=
- [電子郵件保護]
[電子郵件保護]
-admin-姓名=管理員
-admin-姓氏=用戶
-cleanup數據庫

更改以下值:

  • -backend-frontname:Magento管理員登錄頁面“adminlogin”
  • -key:生成自己的密鑰
  • -db-host:數據庫主機localhost
  • -db-name:數據庫名稱'magentodb'
  • -db-user:數據庫用戶'magentouser'
  • –db-password:數據庫密碼'[電子郵件保護]
  • -base-url:Magento URL
  • -admin-user:您的管理員用戶
  • -admin-password:您的Magento管理員密碼
  • -admin-email:您的電子郵件地址

當你在命令中沒有錯誤時,你會在下面看到結果。

Magento安裝在CentOS 7上

Magento 2.1已安裝。 運行以下命令以更改etc目錄的權限,並將magento2目錄的所有者更改為'nginx'用戶。

chmod 700 / var / www / magento2 / app / etc
chown -R nginx:nginx / var / www / magento2

配置Magento Cron

Magento索引器需要這個cronjob。 創建一個新的cronjob作為'nginx'用戶(因為magento在nginx用戶和組下運行)。

crontab -u nginx -e

粘貼下面的配置。

* * * * * / usr / bin / php / var / www / magento2 / bin / magento cron:run | grep -v“按計劃運行作業” >> /var/www/magento2/var/log/magento.cron.log * * * * * / usr / bin / php /var/www/magento2/update/cron.php >> /var/www/magento2/var/log/update.cron.log * * * * * / usr / bin / php / var / www / magento2 / bin / magento設置:cron:run >> / var / www /magento2/var/log/setup.cron.log

保存並退出。

步驟5 - 配置SELinux和Firewalld

在本教程中,我們將使SELinux處於“強制”模式。 運行以下命令以檢查SELinux狀態。

sestatus

檢查SELinux模式

SELinux處於“強制”模式。

使用下面的yum命令安裝SELinux管理工具'policycoreutils-python'。

yum -y install policycoreutils-python

轉到'/ var / www /'目錄。

cd / var / www /

運行下面的命令來更改Magento文件和目錄的安全上下文。

semanage fcontext -a -t httpd_sys_rw_content_t'/var/www/magento2(/.*)?'
semanage fcontext -a -t httpd_sys_rw_content_t'/var/www/magento2/app/etc(/.*)?'
semanage fcontext -a -t httpd_sys_rw_content_t'/var/www/magento2/var(/.*)?'
semanage fcontext -a -t httpd_sys_rw_content_t'/var/www/magento2/pub/media(/.*)?'
semanage fcontext -a -t httpd_sys_rw_content_t'/var/www/magento2/pub/static(/.*)?'
restorecon -Rv'/ var / www / magento2 /'

SELinux配置完成。 現在我們需要配置firewalld。

如果你的服務器上沒有安裝firewalld軟件包,請安裝它。

yum -y安裝firewalld

啟動防火牆並添加firewalld以在啟動時啟動。

systemctl啟動firewalld
systemctl啟用firewalld

打開HTTP和HTTPS的端口,以便我們可以從Web瀏覽器訪問Magento URL。

firewall-cmd -permanent -add-service = http
firewall-cmd -permanent -add-service = https
firewall-cmd -reload

使用下面的命令查看服務的開放端口。

firewall-cmd -list-all

安裝和配置Firewalld

HTTP和HTTPS已準備好進行連接。

步驟6 - 測試

打開您的網絡瀏覽器,然後瀏覽Magento網址。 我的是:

magento.hakase-labs.com

你會看到默認的Magento主頁。

默認Magento主頁

接下來,通過打開adminlogin URL登錄到管理儀表板。

magento.hakase-labs.com/adminlogin

用您的管理員用戶和密碼登錄。

Magento管理員登錄頁面

Magento管理儀表板。

Magento ADmin Dashoboard

Magento 2.1已經在CentOS 7服務器上成功安裝了Nginx,PHP-FPM5.7和MySQL 7。

參考文獻

資源