diff --git a/application/modules/bulletin/controllers/AdminController.php b/application/modules/bulletin/controllers/AdminController.php
index 1bd938929e2a8ca3bf0eb9e99f00df5faea2b267..2fc5434796835f8a7df0c5c5f6b09351ce8c7c84 100644
--- a/application/modules/bulletin/controllers/AdminController.php
+++ b/application/modules/bulletin/controllers/AdminController.php
@@ -2,6 +2,15 @@
 
 class Bulletin_AdminController extends Creq_Controller_Action
 {
+    public function preDispatch()
+    {
+        $user = Auth_UserModel::findCurrentUser();
+        $roles = Auth_GroupModel::findByUser($user);
+        if (!in_array(1, $roles->getId())) {
+            throw new Exception('You must be logged in to view this page.');
+        }
+    }
+
     public function changeMajorNameAction()
     {
         $this->view->messages = $this->_helper->getHelper('FlashMessenger')->getMessages();
@@ -483,6 +492,18 @@ class Bulletin_AdminController extends Creq_Controller_Action
         $this->redirect('/bulletin/admin/remove-major');
     }
 
+    public function appPhpInfoAction()
+    {
+        $user = Auth_UserModel::findCurrentUser();
+        $roles = Auth_GroupModel::findByUser($user);
+        if (!in_array(1, $roles->getId())) {
+            throw new Exception('You must be logged in to view this page.');
+        }
+
+        $this->_helper->layout->disableLayout();
+        $this->view->message = "";
+    }
+
     protected function getCurrentEditingYear()
     {
         $currentYear = Zend_Date::now()->get(Zend_Date::YEAR);
diff --git a/application/modules/bulletin/views/scripts/admin/app-php-info.phtml b/application/modules/bulletin/views/scripts/admin/app-php-info.phtml
new file mode 100644
index 0000000000000000000000000000000000000000..ccddb96025093e37a23cc3ebecff75879c9c696b
--- /dev/null
+++ b/application/modules/bulletin/views/scripts/admin/app-php-info.phtml
@@ -0,0 +1 @@
+<?php echo phpinfo(); ?>
\ No newline at end of file