我正在尝试在老化的 Macbook Pro 上设置与我的 Linux EC2 生产环境相匹配的开发环境。我现在正忙着,只需要让 mod_auth_mysql 插件让 apache 工作。经过几个小时的谷歌搜索、修补和挠头,我想我快到了,但我遇到了一些我在网上找到的东西都无法解决的问题。
nathan@ichigo:/usr/local/mod_auth_mysql-2.9.0$ sudo apxs -c -L/usr/local/mysql/lib -I/usr/local/mysql/include/ -lmysqlclient -lm -lz mod_auth_mysql.c
/usr/share/apr-1/build-1/libtool --silent --mode=compile gcc -DDARWIN -DSIGPROCMASK_SETS_THREAD_MASK -I/usr/local/include -I/usr/include/apache2 -I/usr/include/apr-1 -I/usr/include/apr-1 -I/usr/local/mysql/include/ -c -o mod_auth_mysql.lo mod_auth_mysql.c && touch mod_auth_mysql.slo
/usr/share/apr-1/build-1/libtool --silent --mode=link gcc -o mod_auth_mysql.la -L/usr/local/mysql/lib -lmysqlclient -lm -lz -rpath /usr/libexec/apache2 -module -avoid-version mod_auth_mysql.lo
ld: warning: in /usr/local/mysql/lib/libmysqlclient.dylib, file is not of required architecture
ld: warning: in /usr/local/mysql/lib/libz.a, file is not of required architecture
warning: no debug symbols in executable (-arch x86_64)
我认为这是在抱怨,因为它正在尝试构建 64 位,但我在 32 位平台上?我不完全确定。我尝试在 apxs 上使用 env ARCHFLAGS 和 -D arch 强制构建 32 位,但无济于事。
FWIW,我也尝试了 mod_auth_mysql-3.0.0,并获得或多或少相同的结果。
或者,是否有更现代的方法来在 Apache 中针对 mysql 进行身份验证?我没有找到其他任何东西,但是这个模块已经有 5 年没有得到任何爱了,我不得不应用一些我发现散布在网络上的补丁才能走到这一步。