Wenn Sie das Umgebungs-Online-Projekt bereitstellen möchten, müssen Sie zunächst die folgenden Bedingungen erfüllen: Server (IP, Kontopasswort, Terminal), entsprechend Software, Domänenname (Aufzeichnungsanalyse, Code) usw.
Kauf eines Servers und eines Domänennamens
Melden Sie sich zunächst an der Konsole an und erhalten Sie die IP-Adresse des Hosts, der verbunden werden muss:
Nachdem Sie die öffentliche IP für die Verbindung erhalten haben, können Sie das Remote-Terminal-Tool verwenden um eine Verbindung zum Host herzustellen, der online betrieben werden soll.
Remote-Tools können Putty, CMD usw. ohne Einschränkungen verwenden.
Nehmen Sie als Beispiel CentOS7.6. Führen Sie nach dem Kauf eines Servers und dem Generieren einer Instanz bitte „yum -y update“ aus, um das gesamte System zu aktualisieren, wenn Sie sich zum ersten Mal am System anmelden, um Systemschwachstellen zu vermeiden:
In der aktuellen System-Standard-Yum-Quelle ist die neueste Version von PHP 5.4.16[DY2], und die Projekte, die online gehen müssen, erfordern die Mindestversion PHP7.0. Zu diesem Zeitpunkt kann EPEL[DY3] dieses Problem genau lösen.
a. Installieren Sie epel für CentOS7
rpm -Uvhhttps://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
b. Installieren Sie PHP7.2 und die gängigen Erweiterungen
d
3. Installieren Sie Apache2. Führen Sie den Installationsbefehl yum aus: Das PHP-Skript testet, ob Apache dynamische und statische Dateien normal analysiert.
Hinweis: Die Standardseite von Apache Beliebiger Inhalt:
Verwenden Sie einen Browser für den Testzugriff:4. Installieren Sie Mariadb [DY5]
Das hier installierte Mariadb ist ein Hauptzweig von MySQL und unterscheidet sich nicht wesentlich von MySQL im Einsatz . a. Führen Sie die Installationsanweisungen ausb. Starten Sie den Mariadb-Dienst und legen Sie die Startelemente fest.
rpm -Uvhhttps://mirror.webtatic.com/yum/el7/webtatic-release.rpm
5. Ich habe die Hosts-Datei zuvor geändert, was eigentlich eine Art Domänennamenauflösung ist. es war nur auf lokal beschränkt, aber jetzt muss es online in Betracht gezogen werden.
Um die Auflösung durchzuführen, müssen Sie sich beim Domänennamen-Kontrollfeld anmelden. Stellen Sie am besten sicher, dass der Domänenname registriert wurde, obwohl dies der Fall ist Erfolgreich sein, wirkt sich dies auf die Nutzung aus und wird vom Dienstanbieter bei der Nutzung verwendet.
Klicken Sie auf die Schaltfläche „Analysedatensatz hinzufügen“:
Geben Sie die entsprechenden Datensatzinformationen in die Popup-Fensteroberfläche ein [DY7]:
Ping-Test verwenden:Schritt 1**: Importieren Sie die SQL****-Datei in die Datenbank**
Geben Sie die Befehlszeilenverwaltungsschnittstelle der Datenbank ein und erstellen Sie sie die erforderliche Datenbank edu16, verwenden Sie den Quellbefehl, um die SQL-Datei zu importieren:
Schritt 2**: Erstellen Sie das laufende Verzeichnis der Site, dekomprimieren Sie das hochgeladene Code-Zip****-Komprimierungspaket und kopieren Sie dann das Code in das laufende Verzeichnis der Site* *
a Das vereinbarte Site-Verzeichnis ist „/var/www/html“.
Site-Verzeichnis erstellen:
Das Verzeichnis existiert bereits, es ist nicht erforderlich,
b zu erstellen. Kopieren Sie das zuvor hochgeladene komprimierte Codepaket in das aktuelle Site-Verzeichnis, dekomprimieren Sie das komprimierte Paket und löschen Sie es nach Abschluss der Dekomprimierung.
Dekomprimierungssyntax : Pfad des komprimierten Pakets entpacken
Da sich die Site-Eintragsdatei derzeit im öffentlichen Verzeichnis befindet und sich die aktuelle Projektsite in /var/www/html befindet, mangelt es an Öffentlichkeit, sodass Sie dies tun müssen Ändern Sie das DocumentRoot-Element in der Apache-Konfigurationsdatei.
# vim /etc/httpd/conf/httpd.conf
Gewähren Sie gleichzeitig die Schreibberechtigung für das temporäre Verzeichnis:
Lösen Sie das pseudostatische Problem (falls nicht gelöst, Sie kann nur auf die Homepage zugreifen, andere Seiten erhalten 404):
Idee: Aktivieren Sie das Konfigurationselement „AllowOverride“ im Stammverzeichnis der aktuellen Site, setzen Sie es auf „Alle“ und starten Sie dann Apache neu.
Ziel: Es ist erforderlich, dass auf den Online-Server über das https-Protokoll zugegriffen werden kann. [Verbesserung der Sicherheit und Stärkung des Benutzervertrauens in die Website]
a Beantragen Sie ein SSL-Zertifikat
Wenn Sie möchten, dass Ihre Website das https-Protokoll unterstützt, müssen Sie zunächst ein Serverzertifikat bei der Zertifizierungsstelle beantragen. Derzeit stehen viele kostenlose Zertifikate zur Anwendung zur Verfügung, beispielsweise das einjährige kostenlose Zertifikat von Sysmantec in Zusammenarbeit mit Alibaba Cloud. Kostenlose Zertifikate können in der Regel nur an einen Domainnamen gebunden werden. Zusätzlich zu einem Jahr kostenlosen Service gibt es auch drei Monate kostenlosen Service, es gibt jedoch keine Begrenzung hinsichtlich der Häufigkeit und der Anzahl der Domainnamen und es werden sogar Platzhalter unterstützt.
Nehmen Sie Alibaba Cloud als Beispiel:
https://common-buy.aliyun.com/?spm=5176.2020520163.cas.3.267d56a7EBRcYw&commodityCode=cas#/buy
Nachdem die Zahlung abgeschlossen ist, klicken Sie auf „Ausstehend“. Zertifikat":
Warten Sie, bis die Zertifikatsausstellung abgeschlossen ist, und laden Sie dann das Zertifikat herunter:
Die öffentlichen und privaten Dateien des Zertifikats, die nach dem Dekomprimieren des komprimierten Pakets erhalten wurden:
Laden Sie die drei Dateien auf den Server hoch, korrigieren Sie den Speicherpfad und versuchen Sie, ihn nicht zu ändern.
Gemäß der Vereinbarung werden die öffentlichen und privaten Zertifikatsdateien in „/ssl/“ gespeichert.
b Installieren Sie das mod_ssl-Modul von Apache. 80+443 ):
Hinweis: Die standardmäßige Hauptkonfigurationsdatei von Apache, die mit yum
installiert wird, befindet sich unter /etc/httpd/conf/httpd.conf
根据主配置文件中的配置可以看出,其引入了conf.d目录下的全部conf文件,那么可以在该目录中创建一个vhosts.conf****文件,作为虚拟主机的配置文件: 80端口主机: 443端口主机: 创建好之后,参考上述的框框中配置代码,进行修改,其中443端口的虚拟主机配置含义如下: 修改完毕之后保存退出,然后重启apache d. 打开浏览器访问项目,检查https协议是否生效 问题,生效虽然生效了,但是https协议需要用户手动去补充,在直接输入域名访问的时候默认还是80的http****协议,如何解决? 答:使用重写的方法,强制用户在访问http的时候跳转到https。操作步骤如下,在站点根目录下的“.htaccess”文件中添加如下代码,保存退出即可: RewriteCond %{HTTPS} !=on RewriteRule ^(.*) https://%{SERVER_NAME}/$1 [R,L] 举手之劳:框架运行的时候报错了,请解决。 错误1**:权限不足** 解决办法: 错误2**:数据库连接失败** 解决办法:修改项目目录下的.env文件 处理完毕之后项目即可访问您的项目了。 [DY1]如搭配使用的服务器在大陆境内,则需要域名先通过ICP备案。 [DY2]RHEL以及他的衍生发行版如CentOS、Scientific Linux为了稳定,官方的rpm repository提供的rpm包往往是很滞后的,当然了,这样做这是无可厚非的,毕竟这是服务器版本,安全稳定才是重点。 [DY3]EPEL:Extra Packages of EnterpriseLinux [DY4]“指令A && 指令B”语法表示当指令A执行成功之后再去执行指令B。 systemctl指令是CentOS7中特有的指令,含义如指令名称:systemcontrol。 控制服务开关: systemctl 开关服务名 启动项管理: systemctl enable/disable 服务名 [DY5]在CentOS7的yum源中,数据库软件没有MySQL,取而代之的是Mariadb。 [DY6]执行该指令后依次有以下几个输入内容: 输入当前数据库root帐号密码,没有密码则直接按回车; 是否设置密码?输入Y后,为root用户设置密码; 是否移除匿名用户?选择Y; 是否禁止root用户远程登录?Y/n均可,不会生效; 是否删除测试的test数据库?选择Y/n均可; 是否刷新权限?选择Y; [DY7]常见的几个记录类型: A记录:将域名指向一个IPv4地址; CNAME记录:域名的别名,将一个域名指向另一个域名; MX记录:一般用于做域名邮箱,将域名指向一个邮件服务器; 推荐学习:《PHP视频教程》 Das obige ist der detaillierte Inhalt vonBringen Sie Ihnen Schritt für Schritt die Bereitstellung der Linux-PHP-Umgebung und den Projektstart bei (Teilen). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!<VirtualHost *:80>
ServerAdmin cherish@cherish.pw
DocumentRoot"PATH"
ServerName “yourdomain.com”
<Directory “PATH”>
Allow from all
AllowOverride all
Options -indexes
Require all granted
<VirtualHost *:443>
SSLEngine on
SSLCertificateFile “公钥文件路径”
SSLCertificateKeyFile “私钥文件路径”
SSLCertificateChainFile “证书链文件路径”
SSLCipherSuite"ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4:!DH:!DHE"
SSLProtocol TLSv1.1 TLSv1.2
Headeralways set Strict-Transport-Security “max-age=63072000; includeSubdomains;preload”
DocumentRoot “PATH”
ServerName “yourdomain.com”
<Directory “PATH”>
Allowfrom all
AllowOverride all
Options -indexes
Require all granted
systemctl restart httpd