您的位置:首页 > 运维架构 > Apache

【mac apache】今天把mac升级…

2015-04-13 15:38 176 查看
1、千万不要把/etc/apache2/httpd.conf用httpd.conf-bak给覆盖了,如果万一覆盖了用/etc/apache2/original下的httpd.conf还原恢复一下,要不你连it
works!都看不到了

2、升级yosemite 后修复

cd
/private/etc/

sudo cp
php.ini.default php.ini

sudo vi
php.ini

把php.ini里面所有的default_socket都改成/tmp的mysql.sock的正确位置即可。

因为mysql的默认目录是/tmp/mysql.sock.,命令如下:
方法1:echo "show variables" | mysql | grep "socket"

方法2:echo "status" | mysql | grep "socket"


pdo_mysql.default_socket=/tmp/mysql.sock
mysql.default_socket
= /tmp/mysql.sock

mysqli.default_socket=/tmp/mysql.sock

修复 Apache

Apache 好像是换新版本了,升级完系统之后项目打不开了。之前设置好的虚拟主机都无效了。

首先打开sudo vim /etc/apache2/httpd.conf这个文件,

1. 开启虚拟主机功能,去掉下面代码的「#」注释:

#Include /private/etc/apache2/extra/httpd-vhosts.conf

改过的代码如下:

Include /private/etc/apache2/extra/httpd-vhosts.conf

2. 如果想开启伪静态,去掉下面代码的「#」注释:

#LoadModule rewrite_module libexec/apache2/mod_rewrite.so

改过的代码如下:

LoadModule rewrite_module libexec/apache2/mod_rewrite.so

3. 如果想使用系统自带的 PHP 版本的话,去掉下面代码的「#」注释:

#LoadModule php5_module libexec/apache2/libphp5.so

改过的代码如下:

LoadModule php5_module libexec/apache2/libphp5.so

以上操作完了之后记得要重启Apache:

sudo apachectl restart

修复虚拟主机

现在我们虽然能用虚拟主机了,但是好像不能解析 PHP
了,打开/private/etc/apache2/extra/httpd-vhosts.conf
文件在每一个配置里面添加一行下面的代码就可以了,局域网访问,多域名访问:

Require all granted


示例如下:

1

2

3

4

5

Options Indexes MultiViews FollowSymLinks

AllowOverride All
Require all granted

记得要重启 Apache:

1

sudo apachectl restart

安装 PHP Mcrypt 扩展

这个花费我很长时间,主要是我本来还想用 brew 安装的,省事,但是还是没效果,最后没办法还是编译安装了。

1

2

3

4

5

6

7

8

cd ~/Downloads

wget https://github.com/php/php-src/archive/PHP-5.5.14.zip
unzip PHP-5.5.14.zip

cd php-src-PHP-5.5.14/ext/mcrypt/

/usr/bin/phpize

./configure

make

sudo make install

然后拷贝一份 php.ini 配置文件,重装系统这个文件没了:

1

sudo cp /etc/php.ini.default /etc/php.ini

然后记得在 php.ini 文件里面添加这个扩展,如下面代码:

extension = mcrypt.so


以上操作完之后你的 PHP 环境应该又回来了。:)

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: