当您通过基本身份验证页面登录时,您身份验证的用户名是否存储在任何地方(在服务器或客户端计算机上),可能在环境变量中?
背景:我有一个用于电子邮件服务器的通用 Web 管理页面,我想知道谁在做什么。当用户通过基本身份验证成功登录时,我希望能够识别他们并记录他们的操作。所以每次提交请求时,我都可以写入日志文件。基本格式是:
$username ran a $function against $useraccount
Run Code Online (Sandbox Code Playgroud)
因此,如果用户更改了某人的权限,例如:
Admin-Bob ran a permission change against User-Scott
Run Code Online (Sandbox Code Playgroud)
因此,如果发生错误,我可以轻松地在日志文件中追溯导致原因的操作。我尝试检查%ENV哈希无济于事,有什么想法吗?
我真的不想进入类似 PHP 的会话,因为这意味着取消我的基本身份验证,这已经给了我很好的控制程度。如果我必须用会话编码一些东西,我需要实现一个系统来在最大尝试后阻止用户等等,我真的不想编码。我认为这更适合于 serverfault,因为它更适合 Apache 而不是编程语言。会议可以用多种语言完成。
我正在尝试设置 CentOS 5.5/64 位 VM 以使用 PHP 和 Perl 脚本访问远程 Oracle 数据库。(我没有使用Oracle的经验,之前只编程和管理过一些PostgreSQl和MySQL。)
我已经安装了以下 Oracle Instant Client rpm:
oracle-instantclient11.2-basic-11.2.0.2.0.x86_64.rpm
oracle-instantclient11.2-devel-11.2.0.2.0.x86_64.rpm
oracle-instantclient11.2-sqlplus-11.2.0.2.0.x86_64.rpm
Run Code Online (Sandbox Code Playgroud)
并将以下变量添加到我的 .bash_profile 中:
export TNS_ADMIN=/etc
export ORACLE_HOME=/usr/lib/oracle/11.2
export LD_LIBRARY_PATH=$ORACLE_HOME/client64/lib
PATH=$PATH:$HOME/bin:/sbin:$ORACLE_HOME/client64/bin
Run Code Online (Sandbox Code Playgroud)
/etc/tnsnames.ora我将从运行 Oracle 数据库的远程站点的同事那里收到的信息写入到该文件中:
some_string =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = my_address)(PORT = my_port))
)
(CONNECT_DATA =
(SERVICE_NAME = PDTT)
)
)
Run Code Online (Sandbox Code Playgroud)
好的部分是我现在可以通过运行从 CLI 进行连接
sqlplus 'my_user/my_password@//my_address:my_port/PDTT'
Run Code Online (Sandbox Code Playgroud)
然后可以通过发出以下命令查看一些表:
select table_name from user_tables;
Run Code Online (Sandbox Code Playgroud)
而且我已经sudo pecl install oci8成功运行,添加了包含以下内容的文件/etc/php.d/oci8.ini:
extension=oci8.so
Run Code Online (Sandbox Code Playgroud)
并可以看到以下 phpinfo() 输出
现在我的疑问和问题请: …
我正在准备为一家大公司(前 10 名公司)担任系统管理员(linux)角色,其中一个必备条件是了解 perl、python 或 Ruby 等语言。我有一个电话面试,其中涉及与面试官分享编辑,现在我可以在电话面试或常规面试中期待什么样的编码练习?
我在大多数日常任务中使用了 shell,偶尔使用 Perl 和 python 来处理更大的任务。现在我不希望他们问
编写将 AD 用户同步到 LDAP 的脚本。
我认为数据结构、算法或排序问题不适合我的角色?你能给我一些与 SysAdmin 相关的编码问题的例子吗?
我正在尝试使用 CPAN 安装 XML::Parser perl 模块,但无法使其工作。以下是 CPAN 显示的输出,似乎表明问题在于 Expat。
\n\n安装这个对我们来说至关重要,我不知道下一步该做什么。任何帮助将不胜感激!
\n\ncpan[1]> install XML::Parser\nCPAN: Storable loaded ok (v2.21)\nGoing to read \'/root/.cpan/Metadata\'\n Database was generated on Fri, 15 Apr 2011 16:29:49 GMT\nRunning install for module \'XML::Parser\'\nRunning make for C/CH/CHORNY/XML-Parser-2.40.tar.gz\nCPAN: Digest::SHA loaded ok (v5.48)\nCPAN: Compress::Zlib loaded ok (v2.03)\nChecksum for /root/.cpan/sources/authors/id/C/CH/CHORNY/XML-Parser-2.40.tar.gz ok\nScanning cache /root/.cpan/build for sizes\n............................................................................DONE\nCPAN: Archive::Tar loaded ok (v1.68)\nXML-Parser-2.40\nXML-Parser-2.40/Changes\nXML-Parser-2.40/Makefile.PL\nXML-Parser-2.40/MANIFEST\nXML-Parser-2.40/META.yml\nXML-Parser-2.40/Parser.pm\nXML-Parser-2.40/README\nXML-Parser-2.40/Expat\nXML-Parser-2.40/Expat/encoding.h\nXML-Parser-2.40/Expat/Expat.pm\nXML-Parser-2.40/Expat/Expat.xs\nXML-Parser-2.40/Expat/Makefile.PL\nXML-Parser-2.40/Expat/typemap\nXML-Parser-2.40/inc\nXML-Parser-2.40/inc/Devel\nXML-Parser-2.40/inc/Devel/CheckLib.pm\nXML-Parser-2.40/Parser\nXML-Parser-2.40/Parser/LWPExternEnt.pl\nXML-Parser-2.40/Parser/Encodings\nXML-Parser-2.40/Parser/Encodings/big5.enc\nXML-Parser-2.40/Parser/Encodings/euc-kr.enc\nXML-Parser-2.40/Parser/Encodings/ibm866.enc\nXML-Parser-2.40/Parser/Encodings/iso-8859-2.enc\nXML-Parser-2.40/Parser/Encodings/iso-8859-3.enc\nXML-Parser-2.40/Parser/Encodings/iso-8859-4.enc\nXML-Parser-2.40/Parser/Encodings/iso-8859-5.enc\nXML-Parser-2.40/Parser/Encodings/iso-8859-7.enc\nXML-Parser-2.40/Parser/Encodings/iso-8859-8.enc\nXML-Parser-2.40/Parser/Encodings/iso-8859-9.enc\nXML-Parser-2.40/Parser/Encodings/Japanese_Encodings.msg\nXML-Parser-2.40/Parser/Encodings/koi8-r.enc\nXML-Parser-2.40/Parser/Encodings/README\nXML-Parser-2.40/Parser/Encodings/windows-1250.enc\nXML-Parser-2.40/Parser/Encodings/windows-1251.enc\nXML-Parser-2.40/Parser/Encodings/windows-1252.enc\nXML-Parser-2.40/Parser/Encodings/windows-1255.enc\nXML-Parser-2.40/Parser/Encodings/x-euc-jp-jisx0221.enc\nXML-Parser-2.40/Parser/Encodings/x-euc-jp-unicode.enc\nXML-Parser-2.40/Parser/Encodings/x-sjis-cp932.enc\nXML-Parser-2.40/Parser/Encodings/x-sjis-jdk117.enc\nXML-Parser-2.40/Parser/Encodings/x-sjis-jisx0221.enc\nXML-Parser-2.40/Parser/Encodings/x-sjis-unicode.enc\nXML-Parser-2.40/Parser/Style\nXML-Parser-2.40/Parser/Style/Debug.pm\nXML-Parser-2.40/Parser/Style/Objects.pm\nXML-Parser-2.40/Parser/Style/Stream.pm\nXML-Parser-2.40/Parser/Style/Subs.pm\nXML-Parser-2.40/Parser/Style/Tree.pm\nXML-Parser-2.40/samples\nXML-Parser-2.40/samples/canonical\nXML-Parser-2.40/samples/canontst.xml\nXML-Parser-2.40/samples/ctest.dtd\nXML-Parser-2.40/samples/REC-xml-19980210.xml\nXML-Parser-2.40/samples/xmlcomments\nXML-Parser-2.40/samples/xmlfilter\nXML-Parser-2.40/samples/xmlstats\nXML-Parser-2.40/t\nXML-Parser-2.40/t/astress.t\nXML-Parser-2.40/t/cdata.t\nXML-Parser-2.40/t/decl.t\nXML-Parser-2.40/t/defaulted.t\nXML-Parser-2.40/t/encoding.t\nXML-Parser-2.40/t/ext.ent\nXML-Parser-2.40/t/ext2.ent\nXML-Parser-2.40/t/external_ent.t\nXML-Parser-2.40/t/file.t\nXML-Parser-2.40/t/finish.t\nXML-Parser-2.40/t/foo.dtd\nXML-Parser-2.40/t/namespaces.t\nXML-Parser-2.40/t/parament.t\nXML-Parser-2.40/t/partial.t\nXML-Parser-2.40/t/skip.t\nXML-Parser-2.40/t/stream.t\n/bin/tar: Read 3072 bytes from -\nXML-Parser-2.40/t/styles.t\nCPAN: File::Temp loaded ok (v0.22)\nCPAN: Parse::CPAN::Meta loaded ok (v1.40)\n\n CPAN.pm: Going to build C/CH/CHORNY/XML-Parser-2.40.tar.gz\n\n\nExpat must be installed prior …Run Code Online (Sandbox Code Playgroud) 我想在我的服务器上运行一些需要 perl 5.10 的 perl 脚本。Perl 5.10 似乎是很多年前发布的,但仍然无法用于 CentOS5。
在#rhel 中,我被推荐安装 RHEL6,但我使用 CentOS。在#centos 中,有人开玩笑地建议我安装 CentOS-6。
这让我想知道......我知道的所有其他 Linux 发行版都已经支持 perl 5.10,除了 CentOS。我应该手动安装 perl 5.10 吗?或者这可能最终让我的服务器变得一团糟?或者我应该尝试基于 Fedora 源包重建包?
我已经在 Windows Server 2008 32 位上安装了 Strawberry Perl (v5.12.3),我希望能够运行 simpledb CLI 工具。
我的HOME 环境变量有一个小问题,我将其重命名为 HOMEPATH 来解决问题,但是当我尝试运行时,我得到:
This application has failed to start because libeay32_.dll was not
found. Re-installing the application may fix this problem.
Run Code Online (Sandbox Code Playgroud)
有人知道如何解决这个问题吗?是草莓Perl的问题吗?
我正在尝试在新的 VPS 上安装 Munin,yum install munin但我不断收到有关缺少 perl 模块的错误:Requires: perl(:MODULE_COMPAT_5.8.8). 这是当前安装的 perl 版本:v5.10.1.
我已经四处搜索,但仍然没有找到解决方案。
这是安装尝试输出的相关部分:
--> Finished Dependency Resolution
Error: Package: perl-Mail-Sender-0.8.13-2.el5.1.noarch (epel)
Requires: perl(:MODULE_COMPAT_5.8.8)
Error: Package: perl-Log-Log4perl-1.13-2.el5.noarch (epel)
Requires: perl(:MODULE_COMPAT_5.8.8)
Error: Package: perl-Mail-Sendmail-0.79-9.el5.1.noarch (epel)
Requires: perl(:MODULE_COMPAT_5.8.8)
Error: Package: perl-Log-Dispatch-FileRotate-1.16-1.el5.noarch (epel)
Requires: perl(:MODULE_COMPAT_5.8.8)
Error: Package: perl-Crypt-DES-2.05-3.el5.i386 (epel)
Requires: perl(:MODULE_COMPAT_5.8.8)
Error: Package: munin-1.4.7-5.el5.noarch (epel)
Requires: perl(:MODULE_COMPAT_5.8.8)
Error: Package: perl-IO-Multiplex-1.08-5.el5.noarch (epel)
Requires: perl(:MODULE_COMPAT_5.8.8)
Error: Package: munin-common-1.4.7-5.el5.noarch (epel)
Requires: perl(:MODULE_COMPAT_5.8.8)
Error: Package: perl-Net-Server-0.96-2.el5.noarch (epel)
Requires: perl(:MODULE_COMPAT_5.8.8)
Error: Package: …Run Code Online (Sandbox Code Playgroud) 这类似于这个问题,没有得到回应: How to debug CGI over fcgiwrap/nginx
如何让 perl 错误自动放入 nginx 错误日志中?现在,当出现任何 perl 错误时,错误日志中会出现以下消息:
2014/05/11 22:43:48 [error] 1730#0: *5 connect() failed (111: Connection refused) while connecting to upstream, client: localhost, server: localhost, request: "GET / HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "localhost"
Run Code Online (Sandbox Code Playgroud)
这对于调试来说完全没用。我可以使用 CGI::Carp qw{fatalsToBrowser} 之类的东西,但这不是最佳选择。最好将其记录到服务器端文件中。
我的 CGI Perl 脚本 CentOS 7 运行不正确,它们要么显示为纯文本,要么出现服务器错误。
我一直把我的脚本放在默认/var/www/cgi-bin目录中,但没有运气。
我试图将 CGI 脚本放入其中,/var/www/html/another-dir但它们只是作为纯文本出现。
我已经使用 cpanm 在我的系统上安装 cpan perl 模块,但是 .cpanm/work 目录是 100 兆字节,我想删除它。
我可以删除这个目录而不会对我的 cpanm 安装产生不利影响吗?