我是Yii2的新手。我正在使用Yii2的高级模板。
我有一些代码可以在一台电脑的本地主机服务器上运行,但当我将其复制到另一台电脑本地主机服务器时,它会给我一个internal server
错误。
.htaccess文件在高级/文件夹中
Options +FollowSymlinks
RewriteEngine On
# deal with admin first
RewriteCond %{REQUEST_URI} ^/advanced/(admin)
RewriteRule ^admin/assets/(.*)$ backend/web/assets/$1 [L]
RewriteRule ^admin/css/(.*)$ backend/web/css/$1 [L]
RewriteCond %{REQUEST_URI} !^/advanced/backend/web/(assets|css)/
RewriteCond %{REQUEST_URI} ^/(admin)
RewriteRule ^.*$ backend/web/index.php [L]
RewriteCond %{REQUEST_URI} ^/advanced/(assets|css)
RewriteRule ^assets/(.*)$ frontend/web/assets/$1 [L]
RewriteRule ^css/(.*)$ frontend/web/css/$1 [L]
RewriteCond %{REQUEST_URI} !^/advanced/(frontend|backend)/web/(assets|css)/
RewriteCond %{REQUEST_URI} !index.php
RewriteCond %{REQUEST_FILENAME} !-f [OR]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^.*$ frontend/web/index.php
高级/后端/web/文件夹中的.htaccess文件
RewriteEngine on
# If a directory or a file exists, use the request directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# Otherwise forward the request to index.php
RewriteRule . index.php
我做错什么了吗?请帮忙。。
Apache重写模块已启用。
在php_error中,我发现了以下内容:
[04-Jul-2015 09:00:50 UTC] An Error occurred while handling another error:
exception 'yii'base'InvalidConfigException' with message 'The OpenSSL PHP extension is not installed.' in C:'wamp'www'advanced'vendor'yiisoft'yii2'base'Security.php:480
Stack trace:
#0 C:'wamp'www'advanced'vendor'yiisoft'yii2'base'Security.php(503): yii'base'Security->generateRandomKey(32)
#1 C:'wamp'www'advanced'vendor'yiisoft'yii2'web'Request.php(1292): yii'base'Security->generateRandomString()
#2 C:'wamp'www'advanced'vendor'yiisoft'yii2'web'Request.php(1260): yii'web'Request->generateCsrfToken()
#3 C:'wamp'www'advanced'vendor'yiisoft'yii2'helpers'BaseHtml.php(273): yii'web'Request->getCsrfToken()
#4 C:'wamp'www'advanced'frontend'views'layouts'main.php(20): yii'helpers'BaseHtml::csrfMetaTags()
#5 C:'wamp'www'advanced'vendor'yiisoft'yii2'base'View.php(325): require('C:''wamp''www''adv...')
#6 C:'wamp'www'advanced'vendor'yiisoft'yii2'base'View.php(247): yii'base'View->renderPhpFile('C:''wamp''www''adv...', Array)
#7 C:'wamp'www'advanced'vendor'yiisoft'yii2'base'Controller.php(386): yii'base'View->renderFile('C:''wamp''www''adv...', Array, Object(frontend'controllers'SiteController))
#8 C:'wamp'www'advanced'vendor'yiisoft'yii2'base'Controller.php(372): yii'base'Controller->renderContent('<div class="sit...')
#9 C:'wamp'www'advanced'vendor'yiisoft'yii2'web'ErrorAction.php(108): yii'base'Controller->render('error', Array)
#10 [internal function]: yii'web'ErrorAction->run()
#11 C:'wamp'www'advanced'vendor'yiisoft'yii2'base'Action.php(92): call_user_func_array(Array, Array)
#12 C:'wamp'www'advanced'vendor'yiisoft'yii2'base'Controller.php(151): yii'base'Action->runWithParams(Array)
#13 C:'wamp'www'advanced'vendor'yiisoft'yii2'base'Module.php(455): yii'base'Controller->runAction('error', Array)
#14 C:'wamp'www'advanced'vendor'yiisoft'yii2'web'ErrorHandler.php(80): yii'base'Module->runAction('site/error')
#15 C:'wamp'www'advanced'vendor'yiisoft'yii2'base'ErrorHandler.php(101): yii'web'ErrorHandler->renderException(Object(yii'web'NotFoundHttpException))
#16 [internal function]: yii'base'ErrorHandler->handleException(Object(yii'web'NotFoundHttpException))
#17 {main}
Previous exception:
exception 'yii'web'NotFoundHttpException' with message 'Page not found.' in C:'wamp'www'advanced'vendor'yiisoft'yii2'web'Request.php:187
Stack trace:
#0 C:'wamp'www'advanced'vendor'yiisoft'yii2'web'Application.php(75): yii'web'Request->resolve()
#1 C:'wamp'www'advanced'vendor'yiisoft'yii2'base'Application.php(375): yii'web'Application->handleRequest(Object(common'components'Request))
#2 C:'wamp'www'advanced'frontend'web'index.php(18): yii'base'Application->run()
#3 {main}
$_SERVER = [
'REDIRECT_STATUS' => '200',
'HTTP_HOST' => 'localhost',
'HTTP_USER_AGENT' => 'Mozilla/5.0 (Windows NT 6.2; rv:38.0) Gecko/20100101 Firefox/38.0',
'HTTP_ACCEPT' => 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'HTTP_ACCEPT_LANGUAGE' => 'en-US,en;q=0.5',
'HTTP_ACCEPT_ENCODING' => 'gzip, deflate',
'HTTP_COOKIE' => 'PHPSESSID=6p7cjhqhskro8632hccfmcn1l6',
'HTTP_CONNECTION' => 'keep-alive',
'PATH' => 'C:''Windows''system32;C:''Windows;C:''Windows''System32''Wbem;C:''Windows''System32''WindowsPowerShell''v1.0'';C:''Program Files''Skype''Phone'';',
'SystemRoot' => 'C:''Windows',
'COMSPEC' => 'C:''Windows''system32''cmd.exe',
'PATHEXT' => '.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC',
'WINDIR' => 'C:''Windows',
'SERVER_SIGNATURE' => '',
'SERVER_SOFTWARE' => 'Apache/2.2.11 (Win32) PHP/5.4.42',
'SERVER_NAME' => 'localhost',
'SERVER_ADDR' => '127.0.0.1',
'SERVER_PORT' => '80',
'REMOTE_ADDR' => '127.0.0.1',
'DOCUMENT_ROOT' => 'C:/wamp/www/',
'SERVER_ADMIN' => 'admin@localhost',
'SCRIPT_FILENAME' => 'C:/wamp/www/advanced/frontend/web/index.php',
'REMOTE_PORT' => '51416',
'REDIRECT_URL' => '/advanced/admin/site/login',
'GATEWAY_INTERFACE' => 'CGI/1.1',
'SERVER_PROTOCOL' => 'HTTP/1.1',
'REQUEST_METHOD' => 'GET',
'QUERY_STRING' => '',
'REQUEST_URI' => '/advanced/admin/site/login',
'SCRIPT_NAME' => '/advanced/frontend/web/index.php',
'PHP_SELF' => '/advanced/frontend/web/index.php',
'REQUEST_TIME_FLOAT' => 1436000450.7279999256134033203125,
'REQUEST_TIME' => 1436000450,
]
抛出此异常是因为运行此应用程序的服务器没有Linux的/dev/urandom或/dev/random,并且未安装OpenSSL PHP扩展。
你说它是WAMP服务器,所以左键单击WAMP托盘图标,转到PHP>PHP扩展>确保PHP_opensl已选中-如果没有选中,请检查并重新启动。