Viele Schüler sind möglicherweise nicht mit der LAMP-Umgebungskonfiguration vertraut und können bei der Konfiguration der LAMP-Umgebung auf einige Probleme stoßen. Heute werde ich mit meinen Freunden auf der chinesischen PHP-Website einen Artikel teilen, der auf der LAMP-Umgebungskonfiguration unter Alibaba Cloud Server basiert unter CentOS 6.3 Schauen wir uns die Details unten genauer an.
1. Apache-Konfiguration
vi /etc/httpd/conf/httpd.conf Datei bearbeiten
Optionen Indizes FollowSymLinks
In Zeile 331 geändert zu: Optionen Beinhaltet ExecCGI FollowSymLinks (ermöglicht dem Server die Ausführung von CGI und SSI)
#AddHandler cgi-script .cgi
In Zeile 796 geändert zu: AddHandler cgi -script .cgi .pl (Laufen von CGI-Skripten mit der Erweiterung .pl zulassen)
AllowOverride None
In Zeile 338 geändert zu: AllowOverride All (Allow .htaccess)
AddDefaultCharset UTF-8
wird in Zeile 759 geändert zu: AddDefaultCharset GB2312 (GB2312 als Standardkodierung hinzufügen)
Optionen Indizes MultiViews
Suchen Sie diese Zeile, löschen Sie „Indizes“ und ändern Sie für diesen Zustand Optionen MultiViews (zeigen Sie die Baumverzeichnisstruktur nicht im Browser an)
DirectoryIndex index.html index.html.var
wird in Zeile 402 geändert zu: DirectoryIndex index. html index.htm Default.html Default.htm index.php Default.php index.html.var (Standard-Homepage-Datei festlegen, index.php hinzufügen)
KeepAlive Off
Ändern Sie Zeile 76 in: KeepAlive On (erlauben Sie die Programm Sexuelle Verbindung)
MaxKeepAliveRequests 100
wird in Zeile 83 geändert zu: MaxKeepAliveRequests 1000 (Anzahl gleichzeitiger Verbindungen erhöhen)
:wq! #Speichern und beenden
/ etc/init.d/httpd restart
Ändern Sie DocumentRoot „/var/www/html“ in Ihr Verzeichnis „/data0/www/xxxxxxxxx“ (dieses Verzeichnis ist die gemountete Datenfestplatte)
rm -f /etc/httpd/conf.d/welcome.conf /var/www/error/noindex.html #Standardtestseite löschen
Apache-Protokolldatei
ErrorLog / etc/ httpd/logs/error_log (hier wird auch das PHP-Fehlerprotokoll ausgegeben)
CustomLog /etc/httpd/logs/access_log kombiniert
2. PHP-Konfiguration
vi /etc/php.ini #Edit
date.timezone = PRC #Entfernen Sie das vorherige Semikolon in Zeile 946 und ändern Sie es in date.timezone = PRC
magic_quotes_gpc = On #At 745 Öffnen Sie magic_quotes_gpc, um SQL-Injection zu verhindern (php5.4 unterstützt magic_quotes_gpc nicht (Verhinderung von SQL-Zufluss))
log_errors = Ein #Fehlerprotokoll aufzeichnen
:wq! #Speichern und beenden
/etc/init.d/httpd restart #Restart Apche, php
3. Mounten Sie die Datenfestplatte
Die Festplatte des Alibaba Cloud-Servers Bestehend aus zwei Teilen: Der Systemdatenträger und der Datendatenträger sind standardmäßig nicht gemountet. Wenn Sie den Datenträger verwenden möchten, müssen Sie ihn manuell bereitstellen.
Mit dem Befehl fdisk -l können Sie sehen, dass der Gerätename /dev/xvdb lautet.
Außerdem muss die Festplatte (/dev/xvdb) vor dem Mounten partitioniert und formatiert werden.
Verwenden Sie zum Partitionieren den Befehl fdisk und der Formatierungsbefehl lautet mkfs.ext3.
Informationen zur Bedienung finden Sie im offiziellen Dokument: Linux-System-Montagedatenträger.
Bis zu 4 Datenfestplatten können gemountet werden, und sie werden in /data0 gemountet. In Zukunft können andere Datenfestplatten in /data1,/data2,/data3 gemountet werden
Die Rolle Die Anzahl der Datenfestplatten wird von der Alibaba Cloud-Serverkonsole bereitgestellt. Mit der Funktion „Zurücksetzen“ können Sie zwischen dem Zurücksetzen der Systemfestplatte oder der Datenfestplatte wählen. Wenn das Betriebssystem defekt ist, können Sie nur die Systemfestplatte zurücksetzen und die Website-Daten behalten der Datenplatte.
4. MySQL-Datenbank konfigurieren
Anfangspasswort festlegen, Datenbank erstellen, Tabelle erstellen, Daten importieren
Siehe hier: MySQL-Sicherung und -Wiederherstellung, Greifen Sie remote auf den MySQL-Server zu
und verschieben Sie dann die MySQL-Datendatei auf die „Datenfestplatte“, um zu verhindern, dass die Daten verloren gehen, wenn das System kaputt geht und das System neu erstellt wird.
Nachdem ich die MySQL-Datendatei verschoben habe, ist beim Anmelden mit mysql -u Benutzername -p ein Fehler aufgetreten: FEHLER 2002 (HY000): Kann nicht Stellen Sie über einen Socket eine Verbindung zum lokalen MySQL-Server her '/var/lib/mysql/mysql.sock' (2)
Der Hauptgrund ist, dass es beim Ändern der my.cnf-Datei einige Schritte gibt, die sich von den oben genannten unterscheiden. Ich werde sie hier erklären . Die Betriebsmethode ist wie folgt:
Stoppen Sie den MySQL-Prozess
Verschieben Sie das gesamte Verzeichnis /var/lib/mysql nach /data0/db
mv /var/lib/mysql /home/data/
Dadurch wird die MySQL-Datendatei nach /data0/db/mysql verschoben
Ändern Sie die Konfigurationsdatei my.cnf
Verwenden Sie die Konfigurationsdatei /etc/my.cnf nicht direkt zu /usr/share/mysql/ Suchen Sie die *.cnf-Datei. Kopieren Sie eine davon (my-medium.cnf) nach /etc/ und benennen Sie sie in my.cnf um. Der Befehl lautet wie folgt:
[root@test1 mysql]# cp /usr/share/mysql/my-medium.cnf /etc/my.cnf
Bearbeiten Sie die MySQL-Konfigurationsdatei/etc/my.cnf
Um sicherzustellen, dass MySQL normal funktionieren kann, müssen Sie den Speicherort angeben, an dem die Datei mysql.sock generiert wird.
# Die folgenden Optionen werden an alle MySQL-Clients übergeben
[Client]
#password = your_password
port = 3306
#socket = /var/lib/mysql/mysql.sock # Kommentiert
socket=/data0/db/mysql/mysql.sock #Neu hinzugefügter Inhalt
# Hier folgen Einträge für einige spezifische Programme
# Der MySQL-Server
[mysqld]
port = 3306
#socket = /var/lib/mysql/mysql.sock #Kommentiert
datadir=/data0/db/mysql #Neu hinzugefügter Inhalt
socket=/data0/db/ mysql/mysql. sock #Neu hinzugefügter Inhalt
MySQL-Startskript/etc/rc.d/init.d/mysqld Es müssen keine Änderungen vorgenommen werden
Starten Sie den MySQL-Dienst neu
/etc/rc.d/init.d/mysqld start
Wenn die Arbeit normal verschoben wird, ist sie erfolgreich, ansonsten siehe Überprüfen Sie die vorherige Prüfung erneut in Schritt 7.
Nach dem Verschieben von MySql kann PHP keine Verbindung zur MySql-Datenbank herstellen.
Nach den oben genannten Vorgängen kann PHP nach dem Verschieben der MySql-Datendateien in andere Verzeichnisse keine Verbindung zur MySql-Datenbank herstellen Die .sock-Datei kann nicht gefunden werden.
Lösung eins:
Erstellen Sie einen Softlink
cd /var/lib mkdir mysql ln -s /data0/db/mysql/mysql.sock /var/lib/mysql/mysql.sock
Lösung zwei:
Ändern Sie /etc /php.ini-Datei
Suchen Sie die Zeile mysql.default_socket = . Dieser Wert ist am Anfang leer. PHP verwendet den in MySQL erstellten Standardwert.
Ändern Sie den folgenden Inhalt:
mysql.default_socket = /data0/db/mysql/mysql.sock
Bitte geben Sie den Dateispeicherort von mysql.sock entsprechend Ihrer tatsächlichen Situation ein.
Es gibt auch mysqli.default_socket =. Es hängt von der Situation ab, ob Sie es ändern möchten oder nicht.
Empfohlene verwandte Artikel:
LAMP-Umgebungskonfiguration (Apache+PHP+MySql) unter Linux
Empfohlene Kurse:
Empfohlene fünf Neueste Laravel-Video-Tutorials im Jahr 2017
Das obige ist der detaillierte Inhalt vonKonfiguration der Lampenumgebung: Konfiguration der LAMP-Umgebung unter dem Alibaba Cloud-Server unter CentOS 6.3. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!