如何在CentOS 7 Apache设置mod
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在CentOS 7 Apache设置mod相关的知识,希望对你有一定的参考价值。
参考技术A 在CentOS上安装phpMyAdmin,你第一步需要架设一台Web服务器(如Apache或nginx),安装好MySQL/MariaDB数据库和PHP。根据你的偏好和需求,你可以从LAMP和LEMP中选择一种安装。另一个要求是允许在你的CentOS上安装EPEL库。在CentOS6或7上安装phpMyAdmin一旦你设置了EPEL库,你就能轻松地用以下命令安装phpMyAdmin了。在CentOS7上:$sudoyuminstallphpmyadmin在CentOS7上:$sudoyuminstallphpmyadminphp-mcrypt在CentOS7上配置phpMyAdmin默认情况下,CentOS7上的phpMyAdmin只允许从回环地址(127.0.0.1)访问。为了能远程连接,你需要改动它的配置。用文本编辑器打开phpMyAdmin的配置文件(路径:/etc/httpd/conf.d/phpMyAdmin.conf),找出并注释掉带有"RequireipXXXX"字样的代码行。会有四处这样的代码行,用"Requireallgranted"取而代之。重新改动过的配置文件如下所示。$sudovi/etc/httpd/conf.d/phpMyAdmin.conf.....AddDefaultCharsetUTF-8#Apache2.4#Requireip127.0.0.1#Requireip::1Requireallgranted#Apache2.2OrderDeny,AllowDenyfromAllAllowfrom127.0.0.1Allowfrom::1#Apache2.4#Requireip127.0.0.1#Requireip::1Requireallgranted#Apache2.2OrderDeny,AllowDenyfromAllAllowfrom127.0.0.1Allowfrom::1.....最后,重启httpd使改动生效。$sudosystemctlrestarthttpd在CentOS6上配置phpMyAdmin默认情况下,CentOS6上的phpMyAdmin是禁止从每个IP地址访问的。为了能远程连接,你需要改动它的配置。用文本编辑器打开phpMyAdmin的配置文件(路径:/etc/httpd/conf.d/phpMyAdmin.conf),找出并注释掉"Denyfromall"字样的代码行。然后把"Allowfrom127.0.0.1"字样的代码行改成"Allowfrom0.0.0.0"。重新改动过的配置文件如下所示。$sudovi/etc/httpd/conf.d/phpmyadmin.confOrderDeny,Allow#DenyfromallAllowfrom0.0.0.0下一步是将phpMyAdmin的配置文件用blowfish加密工具加密。这一步需要加密cookie里的密码来作为基于cookie的部分认证。用文本编辑器打开如下路径所示的文件并且用blowfish设置一个随机密码,如下所示。$sudovi/usr/share/phpmyadmin/config.inc.php$cfg['blowfish_secret']='kd5Gd33aXDc50!';/*YOUMUSTFILLINTHISFORCOOKIEAUTH!*/最后,重启httpd使改动生效。$sudoservicehttpdrestart测试phpMyAdmin测试phpMyAdmin是否设置成功,访问这个页面:表。疑难解答这里有一些在CentOS上安装phpMyAdmin的过程中遇到的一些问题解决方法。当你在浏览器里尝试连接phpMyAdmin页面的时候,你看到"403Forbidding"错误:Youdon'thavepermissiontoaccess/phpMyAdminonthisserver.发生这种错误是因为phpMyAdmin默认阻止了IP地址远程连接。要修复这种错误,你需要编辑它的配置文件来允许远程连接。具体操作见上。当你连接phpMyAdmin页面时,你看见"Theconfigurationfilenowneedsasecretpassphrase(blowfish_secret)."信息,并且你无法登录。要修复这种错误,你需要编辑/usr/share/phpmyadmin/config.inc.php这个文件来添加一个随机的blowfish密码,然后重启httpd,如下所示。$sudoservicehttpdrestart(CentOS6)$sudosystemctlrestarthttpd(CentOS7)$cfg['blowfish_secret']='kd5Gd33aXDc50!';/*YOUMUSTFILLINTHISFORCOOKIEAUTH!*/当你连接phpMyAdmin页面时,你看见"Cannotloadmcryptextension.PleasecheckyourPHPconfiguration"错误信息。要修复这种错误,要安装下面这个包:然后重启httpd:$sudoservicehttpdrestart(CentOS6)$sudosystemctlrestarthttpd(CentOS7)$sudoyuminstallphp-mcrypt如何在 Apache 中设置 mod_lua 以访问第三方 Lua 模块?
【中文标题】如何在 Apache 中设置 mod_lua 以访问第三方 Lua 模块?【英文标题】:How to setup mod_lua in Apache to access third party Lua modules? 【发布时间】:2012-03-30 14:32:20 【问题描述】:我正在尝试为 Apache 设置 mod_lua 模块,但在访问第三方 Lua 模块时遇到了困难。假设我在 Apache 的 htdocs 文件夹中有一个 hello_world.lua,它有这样的内容:
require "apache2"
function handle(r)
r.content_type = "text/html"
r:write "Hello World from <strong>mod_lua</strong>."
return apache2.OK
end
然后我转到“http://localhost/hello_world.lua”,它将按预期运行。但是,如果我尝试添加一行,例如:
require "socket"
或者
require "cgilua"
我得到以下输出:
错误!
尝试调用一个 nil 值
但是,有些模块确实可以工作,例如:
require "base"
按预期运行。
如果我导航到文件系统 (c:\program files\lua\5.1\lua\base.lua) 中的 base.lua 并删除此文件,然后尝试运行我的脚本,我会收到与上述相同的错误。所以这一定是 mod_lua 正在检查模块的目录。模块 dll 不在此文件夹中,而是在 c:\program files\lua\5.1\clibs\ 中,我设置了环境变量 LUA_CPATH 指向。
Luasocket 和 cgilua 都存在于这个文件夹中,但是当我尝试在我的脚本中使用它们时它们会导致错误。
据我所知,它适用于任何纯 lua 模块,但任何具有 cmodules 的东西(套接字等)都会导致问题。
附加信息:
操作系统:Windows 7 家庭高级版 LUA_PATH = c:\程序文件\lua\5.1\lua\ LUA_CPATH = c:\program files\lua\5.1\clibs\ Apache 版本:2.2.22 mod_lua 版本:http://www.corsix.org/content/mod-lua-win32#comment-3214需要做什么才能在 mod_lua 运行的脚本中引入模块?
【问题讨论】:
那么,以下建议的建议是否顺利.....? 【参考方案1】:您似乎需要将LuaPackageCPath 和/或LuaPackagePath 指令添加到您的站点配置(在全局配置文件或.htaccess 中,...)。
在你的情况下,我会假设
LuaPackagePath c:\program files\lua\5.1\lua\
LuaPackageCPath c:\program files\lua\5.1\clibs\
应该可以解决问题。
【讨论】:
它对我不起作用。我已经编译了 lfs,然后我得到了一个lfs.so
文件。如果我在与lfs.so
相同的文件夹中创建一个带有require "lfs"
的lua 文件并启动交互式lua,或者lua myscript.lua
它可以工作。但是如果我尝试通过mod_apache
它不起作用。日志文件中的错误是lua: Unable to find function handle in /web/folder/i.lua
添加 LuaPackagePath C:\Program Files (x86)\Lua\5.1\lib LuaPackageCPath C:\Program Files (x86)\Lua\5.1\clibs 后以上是关于如何在CentOS 7 Apache设置mod的主要内容,如果未能解决你的问题,请参考以下文章
使用 Apache 和 mod_wsgi 在 Centos 上设置 Django
如何在 win64位下安装 apache的 一个mod xsendfile
如何将 mod_rewrite 与 Apache -> mod_jk -> tomcat 设置一起使用?