我在Windows上开发了一个Web Zend-framework2应用程序,一切正常。
我想将我的项目部署到RHEL 6.5上的服务器上。我已经尝试了一切,但我不能这样做。
这是我的项目结构
|--zend
|--config
|--data
|--module
|--Application
|--...
|--public
|--index.php
|--.htaccess
|--vendor
|--init_autoloader.php
这是.htaccess的内容
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteCond %{REQUEST_URI}::$1 ^(/.+)(.+)::\2$
RewriteRule ^(.*) - [E=BASE:%1]
RewriteRule ^(.*)$ %{ENV:BASE}index.php [NC,L]
这是index.php的内容
chdir(dirname(__DIR__));
// Decline static file requests back to the PHP built-in webserver
if (php_sapi_name() === 'cli-server') {
$path = realpath(__DIR__ . parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH));
if (__FILE__ !== $path && is_file($path)) {
return false;
}
unset($path);
}
// Setup autoloading
require 'init_autoloader.php';
// Run the application!
Zend\Mvc\Application::init(require 'config/application.config.php')->run();
我的php版本是5.3,rewrite_mod已打开 我将虚拟主机添加到httpd.conf,如此
<VirtualHost *:80>
ServerName zend.local
DocumentRoot /var/www/zend/public
<Directory "/var/www/zend/public">
AllowOverride All
Order allow,deny
Allow from all
</Directory>
id应该做什么?