LAMP-Apacheサービスをコンパイルしてインストールします(4-1)
1.ランプの概要
1はじめに
LAMPアーキテクチャは、現在成熟しているエンタープライズWebサイトアプリケーションモードの1つであり、動的なWebサイトサービスとアプリケーション開発環境を提供するために連携する一連のシステムと関連ソフトウェアを指します。LAMPは、Linuxオペレーティングシステム、Apache Webサーバー、MySQLデータベースサーバー、PHP(またはPerl、Python)Webプログラミング言語を具体的に含む頭字語です。
2.各コンポーネントの役割
L :(プラットフォーム)Linux:LAMPアーキテクチャの基盤として、Webサイトをサポートするためのオペレーティングシステムを提供します。これにより、他の3つのコンポーネントとの安定性と互換性が向上します(AMPコンポーネントはWindows、UNIX、その他のプラットフォームもサポートします)。
A :(フォアグラウンド)Apache:LAMPアーキテクチャのフロントエンドとして、強力で安定したWebサーバープログラムであり、ユーザーにWebサイトへのアクセスを直接提供し、Webページ、画像、その他のファイルコンテンツを送信します。
M :(背景)MySQL:LAMPアーキテクチャのバックエンドとして、人気のあるオープンソースのリレーショナルデータベースシステムです。企業のWebサイトやビジネスシステムなどのアプリケーションでは、さまざまなアカウント情報、製品情報、顧客情報、ビジネスデータなどをMySQLデータベースに保存でき、他のプログラムはSQLステートメントを介してこの情報を照会および変更できます。
P :(中間接続)PHP / Perl / Python:動的Webページを開発するための3つのプログラミング言語として、動的Webページファイルの解釈、共同作業のためのWebサーバーおよびデータベースシステムとの通信、および開発と運用の提供を担当します。 Webアプリケーションの環境。その中でも、PHPは広く使用されているオープンソースの多目的スクリプト言語であり、HTMLに埋め込むことができ、特にWebアプリケーションの開発に適しています。
3.各コンポーネントのインストールシーケンス
LAMPプラットフォームを構築する場合、各コンポーネントのインストール順序はLinux、Apache、MySQL、PHPです。その中でも、ApacheとMySQLのインストールには厳密な順序はありません。PHP環境のインストールは通常、インストールの最後に行われ、Webサーバーとデータベースシステムとの通信を担当して連携します。
4.関連するソフトウェアパッケージ
リンク:LAMPソフトウェアパッケージ
抽出コード:59mp
次に、構造を構築します
1.ファイアウォールをオフにして、Apacheのインストールに必要なソフトウェアパッケージを/ optディレクトリにアップロードします
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
httpd-2.4.29.tar.gz
apr-1.6.2.tar.gz
apr-util-1.6.0.tar.gz
aprコンポーネントパッケージは、クロスプラットフォームのApache上位レベルアプリケーションをサポートし、基盤となるインターフェイスライブラリを提供するために使用されます。これにより、同時接続の数を効果的に減らし、プロセスを減らし、アクセスの輻輳を減らすことができます。
2.インストール環境はパッケージによって異なります
yum -y install \
gcc \ #C语言的编译器
gcc-c++ \ #C++的编译器
make \ #源代码编译器(源代码转换成二进制文件)
pcre \ #pcre是一个Perl函数库,包括perl 兼容的正则表达式库
pcre-devel \ #perl的接口开发包
expat-devel \ #用于支持网站解析HTML、XML文件
perl #perl语言编译器
yum -y install gcc gcc-c++ make pcre pcre-devel expat-devel perl
3.ソフトウェアモジュールを構成します
cd /opt/
tar zxvf apr-1.6.2.tar.gz
tar zxvf apr-util-1.6.0.tar.gz
tar jxvf httpd-2.4.29.tar.bz2
mv apr-1.6.2 /opt/httpd-2.4.29/srclib/apr
mv apr-util-1.6.0 /opt/httpd-2.4.29/srclib/apr-util
cd /opt/httpd-2.4.29/
./configure \
--prefix=/usr/local/httpd \ #指定将 httpd 服务程序的安装路径
--enable-so \ #启用动态加载模块支持,使 httpd 具备进一步扩展功能的能力
--enable-rewrite \ #启用网页地址重写功能,用于网站优化、防盗链及目录迁移维护
--enable-charset-lite \ #启动字符集支持,以便支持使用各种字符集编码的页面
--enable-cgi #启用CGI(通用网关接口)脚本程序支持,便于网站的外部扩展应用访问能力
./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi
4.コンパイルしてインストールします
make #make -j 2 表示开2核同时进行编译
make install
make && make install
5.構成ファイルのパスを最適化し、httpdサービスの実行可能プログラムファイルをパス環境変数のディレクトリに配置して、システムを簡単に識別できるようにします。
ln -s /usr/local/httpd/conf/httpd.conf /etc/
ln -s /usr/local/httpd/bin/* /usr/local/bin/
6.httpdシステムサービスを追加します
方法一:
cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd #用于service服务管理
chmod +x /etc/init.d/httpd
vi /etc/init.d/httpd
#!/bin/bash #在第一行前插入新行,添加此三行内容
#chkconfig: 35 85 21 #35级别自动运行 第85个启动 第21个关闭
#description: Apache is a World Wide Web server
chkconfig --add httpd #将httpd服务加入到service管理器
systemctl start httpd.service
或
service httpd start
方法2:
vim /lib/systemd/system/httpd.service
[Unit]
Description=The Apache HTTP Server #描述
After=network.target #描述服务类别
[Service]
Type=forking #后台运行方式
PIDFile=/usr/local/httpd/logs/httpd.pid #PID文件位置
ExecStart=/usr/local/bin/apachectl $OPTIONS #启动服务
ExecReload=/bin/kill -HUP $MAINPID #根据PID重载配置
[Install]
WantedBy=multi-user.target
systemctl start httpd.service
systemctl enable httpd.service
vim / lib / systemd / system / httpd.serviceインターフェース
7.httpdサービス構成ファイルを変更します
vim /etc/httpd.conf
--52行--修改
Listen 192.198.221.20:80
--197行--取消注释,修改
ServerName www.srs.com:80
--221行--默认首页存放路径
DocumentRoot "/usr/local/httpd/htdocs"
--255行--默认首页文件名设置
DirectoryIndex index.html
httpd -t 或 apachectl -t #检查配置文件的配置项是否有误
cat /usr/local/httpd/htdocs/index.html
systemctl restart httpd.service
8.ブラウザアクセスの検証
netstat -anpt | grep 80
echo "192.168.80.10 www.srs.com" >> /etc/hosts
http://192.168.221.20
http://www.srs.com