您现在的位置是:首页 > cms教程 > WordPress教程WordPress教程
apache服务器server介绍和安装配置WordPress
寒雁2025-03-28WordPress教程已有人查阅
导读1、apache server 是一个流行的http服务器。对应的可执行软件是httpd 和 apachectl。httpd提供http服务,apachectl控制httpd的执行。2、CGI 即 Common Gateway Interface,
1、apache server 是一个流行的http服务器。对应的可执行软件是httpd 和 apachectl。httpd提供http服务,apachectl控制httpd的执行。
2、CGI 即 Common Gateway Interface, 是apache server 上程序和http交互的协议,在多种语言上都有实现,所以你在apache服务器上可以运行perl、php、python等脚本。apache默认提供的是文旦内容,即访问服务上的资源时,得到的是一个纯文本文档。CGI让程序能够提供动态网页内容。
3、FCGI, Fast CGI ,是CGI的改进版,性能比CGI好。
4、apache可以加载动态模块,FCGI就是用于给apache加载的一个动态库。apache要加载哪些模块,是在配置文件中设置的。
5、在apache上使用CGI运行脚本的时候,需要给脚本文件设置可执行权限,否则被认为是服务器异常,http返回500状态码,日志中输出:
7、Perl 一个脚本语言
环境搭建
1、安装apache server
官网: http:// .apache.org/
进入download页下载压缩文件。解压后是无法直接安装的。需要下载 APR 、 APR-UTIL 并解压到apache的srclib目录下。文件层级如下
之后执行下面的命令,把其中的PREFIX替换成安装目录
apachectl start启动服务后,访问 http://localhost:8081/ 可以看到 It Works页面,说明apache 正常启动了。此时apache只提供文档内容,还没有配置CGI交互能力。
2、apache基本配置
apache的配置文件使用xml格式,默认配置文件是config/httpd.config。
apache按目录进行配置。<Directory> 标签用来配置某一个目录的信息。下面的配置表示设置/usr/local/bin/apache/htdocs目录的访问权限对所有ip公开(Require all granted ,2.4版本以前使用Allow指令设置,2.4以后的版本不能使用Allow 指令),表示设置该目录的子目录不可以重写配置(AllowOverride None),表示该目录下的可以进行的操作有显示列表(Indexes),访问连接文件(FollowSymLinks)。
LogLevel debug
3、CGI模块安装 和 apache 配置CGI功能 (以Perl为例)
从apache官网下载模块mod_fcgid,解压后执行:
./configure.apxs
make
make install
安装好之后,apache的modules目录下应该有modules/mod_cgid.so文件。在http.config文件中增加配置:LoadModule cgid_module modules/mod_cgid.so,从而使得apache能加载CGI模块。
http.config中默认有下面的配置: 它表示给/usr/local/bin/apache/cgi-bin/路径设置一个别名 /cgi-bin/ 即 可以使用 http://localhost:8081/cgi-bin/test-cgi 形式的地址访问/usr/local/bin/apache/cgi-bin/下的test-cgi资源。Alias指令也是设置别名,不同的是ScriptAlias下的资源会当做脚本来执行。
ScriptAlias /cgi-bin/ "/usr/local/bin/apache/cgi-bin/"
修改配置后,直接重启apache是不能运行脚本的。从error.log中可以看到对应的错误提示。
1、第一个错误是脚本执行权限错误。因为/cgi-bin目录下的脚本默认只有读写权限,直接访问会导致http 500错误,此时error.log中会输出 Permission denied: AH01241: exec of '/usr/local/bin/apache/cgi-bin/printenv' failed。
2、第二个错误是脚本格式错误。此时error.log中提示:Exec format error: AH01241: exec of '/usr/local/bin/apache/cgi-bin/printenv' failed。需要在脚本头中添加#!/bin/bash #!/usr/bin/perl 等,用来表明使用哪一个解释器来执行脚本。
3、如果你执行perl脚本,还有可能看到这条日志: can't locate fcgi.pm in @inc。它表明你的perl缺少CGI模块。可以按照perl官网的提示下载安装。
最终在apache上通过CGI访问脚本的效果如下:
4、配置php脚本的CGI
首先从apache官网下载mod_fcgid模块,解压后执行下面的命令进行安装:
./configure.apxs
make
make install
httpd.conf 中设置.php 处理器
AddHandler fcgid-script .php
安装后在apache的modules目录下会出现 mod_fcgid.so 。此时在httpd.config 中配置加载mod_fcgid.so( )
给脚本目录配置处理器 SetHandler fcgid-script
Alias /webroot/ /Users/k/webroot/
配置好apache和php cgi之后,直接下载WrodPress并解压到apache访问目录,设置脚本的可执行权限。
配置目录索引页支持index.php
按照WordPress的安装引导完成设置后,你可能遇到这个错误(php JIT compilation failed: no more memory in):解决的办法是找到php的配置文件php.ini 按照下面的内容修改。
把
;pcre.jit=1
改成
pcre.jit=0
注意删除前面的逗号
2、CGI 即 Common Gateway Interface, 是apache server 上程序和http交互的协议,在多种语言上都有实现,所以你在apache服务器上可以运行perl、php、python等脚本。apache默认提供的是文旦内容,即访问服务上的资源时,得到的是一个纯文本文档。CGI让程序能够提供动态网页内容。
3、FCGI, Fast CGI ,是CGI的改进版,性能比CGI好。
4、apache可以加载动态模块,FCGI就是用于给apache加载的一个动态库。apache要加载哪些模块,是在配置文件中设置的。
5、在apache上使用CGI运行脚本的时候,需要给脚本文件设置可执行权限,否则被认为是服务器异常,http返回500状态码,日志中输出:
Permission denied: AH01241: exec of '/usr/local/bin/apache/cgi-bin/printenv' failed
6、APR 、 APR-UTIL 安装运行apache软件需要的环境7、Perl 一个脚本语言
环境搭建
1、安装apache server
官网: http:// .apache.org/
进入download页下载压缩文件。解压后是无法直接安装的。需要下载 APR 、 APR-UTIL 并解压到apache的srclib目录下。文件层级如下
之后执行下面的命令,把其中的PREFIX替换成安装目录
$ ./configure --prefix=PREFIX
$ make
$ make install
$ sudo PREFIX/bin/apachectl start
安装后的apache服务默认监听的端口是80,监听这个端口需要使用root权限。你可以在config/httpd.config文件中修改要监听的端口:Listen 8081。apachectl start启动服务后,访问 http://localhost:8081/ 可以看到 It Works页面,说明apache 正常启动了。此时apache只提供文档内容,还没有配置CGI交互能力。
2、apache基本配置
apache的配置文件使用xml格式,默认配置文件是config/httpd.config。
apache按目录进行配置。<Directory> 标签用来配置某一个目录的信息。下面的配置表示设置/usr/local/bin/apache/htdocs目录的访问权限对所有ip公开(Require all granted ,2.4版本以前使用Allow指令设置,2.4以后的版本不能使用Allow 指令),表示设置该目录的子目录不可以重写配置(AllowOverride None),表示该目录下的可以进行的操作有显示列表(Indexes),访问连接文件(FollowSymLinks)。
<Directory "/usr/local/bin/apache/htdocs">
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
apache默认输出的日志很少,你需要在http.config中把LogLevel修改为下面的内容来打印更多的信息。如果不修改,下面提到的一些日志你是看不到的。LogLevel debug
3、CGI模块安装 和 apache 配置CGI功能 (以Perl为例)
从apache官网下载模块mod_fcgid,解压后执行:
./configure.apxs
make
make install
安装好之后,apache的modules目录下应该有modules/mod_cgid.so文件。在http.config文件中增加配置:LoadModule cgid_module modules/mod_cgid.so,从而使得apache能加载CGI模块。
http.config中默认有下面的配置: 它表示给/usr/local/bin/apache/cgi-bin/路径设置一个别名 /cgi-bin/ 即 可以使用 http://localhost:8081/cgi-bin/test-cgi 形式的地址访问/usr/local/bin/apache/cgi-bin/下的test-cgi资源。Alias指令也是设置别名,不同的是ScriptAlias下的资源会当做脚本来执行。
ScriptAlias /cgi-bin/ "/usr/local/bin/apache/cgi-bin/"
修改配置后,直接重启apache是不能运行脚本的。从error.log中可以看到对应的错误提示。
1、第一个错误是脚本执行权限错误。因为/cgi-bin目录下的脚本默认只有读写权限,直接访问会导致http 500错误,此时error.log中会输出 Permission denied: AH01241: exec of '/usr/local/bin/apache/cgi-bin/printenv' failed。
2、第二个错误是脚本格式错误。此时error.log中提示:Exec format error: AH01241: exec of '/usr/local/bin/apache/cgi-bin/printenv' failed。需要在脚本头中添加#!/bin/bash #!/usr/bin/perl 等,用来表明使用哪一个解释器来执行脚本。
3、如果你执行perl脚本,还有可能看到这条日志: can't locate fcgi.pm in @inc。它表明你的perl缺少CGI模块。可以按照perl官网的提示下载安装。
最终在apache上通过CGI访问脚本的效果如下:
4、配置php脚本的CGI
首先从apache官网下载mod_fcgid模块,解压后执行下面的命令进行安装:
./configure.apxs
make
make install
httpd.conf 中设置.php 处理器
AddHandler fcgid-script .php
安装后在apache的modules目录下会出现 mod_fcgid.so 。此时在httpd.config 中配置加载mod_fcgid.so( )
LoadModule fcgid_module modules/mod_fcgid.so
<IfModule fcgid_module>
FcgidBusyTimeout 3600
</IfModule>
如果遇到这个异常 Can't locate FCGI.pm in @INC,请安装prel的FCGI模块(从perl官网安装)给脚本目录配置处理器 SetHandler fcgid-script
<Directory "/usr/local/bin/apache/cgi-bin">
#AddHandler fcgid-script .php
SetHandler fcgid-script
AllowOverride None
Options None
Require all granted
</Directory>
给php脚本添加可执行权限 chmod u+x *.php 。此时访问php脚本可以看到脚本提供的动态网页内容。脚本和效果如下:
<?php
phpinfo()
?>
如果你遇到这个错误(mod_fcgid: error reading data),请按照下面的内容配置httpd.configAlias /webroot/ /Users/k/webroot/
<Location /webroot/>
AddHandler fcgid-script .php
Options +ExecCGI
FcgidWrapper /Users/k/weblib/php-wrapper .php
# Customize the next two directives for your requirements.
Order allow,deny
Allow from all
</Location>
<Directory "/Users/k/webroot">
AddHandler fcgid-script .php
AllowOverride None
#Options None
Options +ExecCGI
Require all granted
</Directory>
安装WordPress配置好apache和php cgi之后,直接下载WrodPress并解压到apache访问目录,设置脚本的可执行权限。
配置目录索引页支持index.php
<IfModule dir_module>
DirectoryIndex index.html index.php
</IfModule>
之后访问WordPress资源,就可以看到WordPress的安装页了,效果入下:按照WordPress的安装引导完成设置后,你可能遇到这个错误(php JIT compilation failed: no more memory in):解决的办法是找到php的配置文件php.ini 按照下面的内容修改。
把
;pcre.jit=1
改成
pcre.jit=0
注意删除前面的逗号
本文标签:
很赞哦! ()
相关教程
图文教程
wordpress函数详解
is_home() : 是否为主页is_single() : 是否为内容页(Post), 是否是单篇文章is_page() : 是否为内容页(Page), 是否是 页面文章is_category() : 是否为Category/Archive页,
wordpress使用的是什么编程语言
wordpress使用的编程语言是PHP语言,也就是说WordPress是使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL数据库的服务器上架设属于自己的网站。
wordpress数据库结构和表结构说明
数据表结构:wp_commentmeta:存储评论的元数据wp_comments:存储评论wp_links:存储友情链接(Blogroll)wp_options:存储WordPress系统选项和插件、主题配置wp_postmeta:存储文章(包
docker搭建wordpress网站的方法
WordPress是使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL数据库的服务器上架设属于自己的网站。也可以把 WordPress当作一个内容管理系统(CMS)来使用。
相关源码
-
(自适应)简繁双语机械矿山矿石五金设备pbootcms源码下载本模板基于PbootCMS开发,主要面向机械五金、矿山矿石设备等行业,支持简体中文和繁体中文双语切换。采用响应式布局技术,确保在各种设备上都能获得良好的浏览体验。模板设计注重展示工业设备的专业性和技术特点,帮助企业建立可靠的线上展示平台。查看源码 -
(自适应)html5导航目录索引工具类网站源码下载本模板基于PbootCMS开发,为站长导航、网址导航类网站设计。采用HTML5+CSS3技术构建,适配PC端和移动端,提供流畅的浏览体验。适用于个人站长、资源导航平台等场景查看源码 -
(自适应)水墨风中药馆中医名医介绍pbootcms网站模板本模板基于PbootCMS内核开发,为中医馆、中医药企业量身定制,可快速搭建具有传统文化特色的官方网站。自适应手机端设计,数据实时同步,助您高效展示中医特色诊疗、中药产品、养生知识等内容,塑造专业品牌形象。查看源码 -
帝国CMS中小学生知识点试题练习题考试源码下载基于帝国CMS后台管理系统,支持在线修改联系信息、网站参数等配置,操作流程简洁明了。专注于中小学教育领域,集成知识点总结、试题练习、考试资讯等学习资源,为师生提供全面的在线学习支持与服务。查看源码 -
(响应式)蓝色智能摄像头安防防盗电子设备免费pbootcms源码下载这是一款针对智能安防行业特点设计的网站模板,采用蓝色系配色方案,体现科技感和安全性。模板包含产品展示、解决方案、技术支持和新闻中心等核心模块,能够全面展示智能安防设备的技术特点和行业应用。查看源码 -
(自适应响应式)环保水净化处理设备阀门等网站源码下载基于PbootCMS内核开发的响应式模板,为水处理设备、空气净化器等环保企业设计,自适应手机端浏览。通过简洁高效的后台管理系统,助力环保科技企业快速建立专业在线展示平台。查看源码
| 分享笔记 (共有 篇笔记) |

