我有一些问题,而且我没有选择去哪里看。
我已经在EC2上安装了一个codeigniter网站,并整理了所有正确的配置,以便网站正常运行。
在Apache的同一个www目录中,有一些遗留页面位于单独的编码器文件中。每个人都有自己的.htaccess文件。
我启用的网站配置如下所示:
<VirtualHost xxx.xx.xx.xxx:80>
ServerName mysite.com
ServerAlias www.mysite.*
#DocumentRoot /home/mysite
DocumentRoot /home/mysite/sites/production
ErrorLog /var/log/error_log_mysite
CustomLog "/var/log/access_log_housebites.log combined
Alias /blog /home/mysite_blog
<Directory /home/mysite_blog>
Options FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
博客.htaccess看起来像这样:
DirectoryIndex index.php
RewriteEngine on
RewriteBase /blog/
RewriteCond $1 !^(index\.php|gallery|images|css|js|robots\.txt|favicon\.ico)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ ./index.php/$1 [L,QSA]
日志文件中的错误说明:
[Fri Nov 01 19:27:43.091985 2013] [:error] [pid 3953] [client 91.125.181.111:50889] PHP Fatal error: Call-time pass-by-reference has been removed in /var/www/mysite_blog/wp-content/plugins/flickrpress/flickr.php on line 67
我很确定这是在旧服务器上安装了5.3的新服务器上安装PHP 5.5的问题。
有没有办法覆盖PHP,现在只需在Ubuntu / Apache上使用5.3?
答案 0 :(得分:1)
嗯,您可以做的一件事是修复flickr.php文件,或者至少确保您已升级到最新版本。来自:PHP 5.4 Call-time pass-by-reference - Easy fix available?
// Wrong way!
myFunc(&$arg); # Deprecated pass-by-reference argument
function myFunc($arg) { }
使用:
// Right way!
myFunc($var); # pass-by-value argument
function myFunc(&$arg) { }