centos 6.5环境安装
因为是公司内部使用在线人数不会太多,使用yum安装lamp环境即可1.安装lamp基本环境
yum -y install mysql mysql-server php php-mysql httpd php-gd*安装freetype
yum -y install freetype freetype-devel
安装ImageMagick性能更佳
yum install -y ImageMagick ImageMagick-devel
安装mcrypt支持
yum install -y libmcrypt libmcrypt-devel mcrypt mhash php-mcrypt
更改目录权限
chown -R apache.apache /var/www/html/
2.创建wecenter数据库
mysql> create database wecenter charset=utf8;
上传安装.zip文件到/var/www/html目录,解压,并将upload目录改名为wecenter
访问http://IP/wecenter/install/开始进行安装
后台管理报错:
报错:
Not FoundThe requested URL /admin/ was not found on this server.
Apache/2.2.15 (CentOS) Server at 192.168.3.87 Port 80
解决办法:
分析:
从页面返回的值来看,是系统直接找了 192.168.3.87/admin这个页面,而我们的目录放在/var/www/html/下的wecenter目录中,修改httpd.conf文件将网站根路径指向/var/www/html/wecenter目录即可解决问题
vim /etc/httpd/conf/httpd.conf
修改以下两处:
<Directory "/var/www/html/wecenter">
DocumentRoot "/var/www/html/wecenter"
重启apache服务
service httpd restart
系统配置伪静态的方法:
anwsion系统rewrite设置步骤1. 参考下文设置好Rewrite规则,以管理员身份登录,进入管理后台 => 全局 => 站点功能 => 开启 Rewrite 伪静态
2.设置服务器的 Rewrite 规则
(*) 部分服务器可能由于配置不同需要修改规则
Apache:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
(*) 在某些环境下需要加 RewriteBase /
Nginx:
location / {
if (!-e $request_filename)
{
rewrite (.*) /index.php;
}
}
IIS:
[ISAPI_Rewrite]
CacheClockRate 3600
RepeatLimit 32
RewriteRule /static/(.*) /static/$1 [L]
RewriteRule /uploads/(.*) /uploads/$1 [L]
RewriteRule /(.*) /index.php/$1 [L]
(*)IIS的rewrite插件较多,没有一个通用的答案,如果上述规则失效,需要大家做进一步的调整。
centos 7环境下的安装
因为是公司内部使用在线人数不会太多,使用yum安装lamp环境即可
1.安装lamp基本环境
安装ImageMagick性能更佳安装mcrypt支持
yum -y install mariadb mariadb-server php php-mysql httpd php-gd* freetype freetype-devel ImageMagick ImageMagick-devel libmcrypt libmcrypt-devel mcrypt mhash php-mcrypt
更改目录权限
chown -R apache.apache /var/www/html/
2.创建wecenter数据库
配置mysql数据库。
设置开机自启动mysql,并启动mysql,使用如下命令:
systemctl enable mariadb
ln -s '/usr/lib/systemd/system/mariadb.service' '/etc/systemd/system/multi-user.target.wants/mariadb.service'
systemctl start mariadb
初始化mysql数据库,并配置root用户密码。使用如下命令:
mysql_secure_installation
/usr/bin/mysql_secure_installation: line 379: find_mysql_client: command not found NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY! In order to log into MariaDB to secure it, we'll need the current password for the root user. If you've just installed MariaDB, and you haven't set the root password yet, the password will be blank, so you should just press enter here. Enter current password for root (enter for none): OK, successfully used password, moving on... Setting the root password ensures that nobody can log into the MariaDB root user without the proper authorisation. Set root password? [Y/n] y New password: Re-enter new password: Password updated successfully! Reloading privilege tables.. ... Success! By default, a MariaDB installation has an anonymous user, allowing anyone to log into MariaDB without having to have a user account created for them. This is intended only for testing, and to make the installation go a bit smoother. You should remove them before moving into a production environment. Remove anonymous users? [Y/n] y ... Success! Normally, root should only be allowed to connect from 'localhost'. This ensures that someone cannot guess at the root password from the network. Disallow root login remotely? [Y/n] y ... Success! By default, MariaDB comes with a database named 'test' that anyone can access. This is also intended only for testing, and should be removed before moving into a production environment. Remove test database and access to it? [Y/n] y - Dropping test database... ... Success! - Removing privileges on test database... ... Success! Reloading the privilege tables will ensure that all changes made so far will take effect immediately. Reload privilege tables now? [Y/n] y ... Success! Cleaning up... All done! If you've completed all of the above steps, your MariaDB installation should now be secure. Thanks for using MariaDB!
创建数据库
MariaDB> create database wecenter charset=utf8;
#如果仅授权数据库的增删改查权限将无法安装
MariaDB> GRANT ALL PRIVILEGES ON wecenter.* TO 'admin'@'%' IDENTIFIED BY 'pass';
MariaDB> FLUSH PRIVILEGES;
3.apache相关配置
启动apache服务systemctl start httpd
上传WeCenter_3-1-9-0612-Patches.zip到/var/www/html/目录
解压并将包移走
unzip WeCenter_3-1-9-0612-Patches.zip
mv WeCenter_3-1-9-0612-Patches.zip /tmp/
将upload改名
mv UPLOAD wecenter
访问http://ip_addr/wecenter/install/进行安装
• 欢迎使用 欢迎使用 WeCenter 安装程序, WeCenter 是中国首个基于 PHP + MYSQL 开发的开源化社交问答社区 • 服务器环境检查 为了确保程序安装顺利, 您的服务器需要满足以下系统需求的运行环境 PHP 版本5.4.16√ 数据库模块PDO_MYSQL√ Session 支持√ Cookie 支持√ CType 支持√ CURL 支持√ 图象处理库GD√ (加装 ImageMagick 性能更佳) FreeType 支持√ Zlib 支持√ Mcrypt 支持√ 编码转换√ 上传限制2M (此处建议值 > 8M) 目录权限/var/www/html/wecenter/system/√ 目录权限/var/www/html/wecenter/system/config/√
更改目录权限
chown -R apache.apache /var/www/html/
后台管理报错:
Not Found
The requested URL /admin/ was not found on this server.
Apache/2.2.15 (CentOS) Server at 192.168.3.87 Port 80
解决办法:
分析:
从页面返回的值来看,是系统直接找了 192.168.3.87/admin这个页面,而我们的目录放在/var/www/html/下的wecenter目录中,修改httpd.conf文件将网站根路径指向/var/www/html/wecenter目录即可解决问题
vim /etc/httpd/conf/httpd.conf
修改以下两处:
#DocumentRoot "/var/www/html"
DocumentRoot "/var/www/html/wecenter"
# # Relax access to content within /var/www. # <Directory "/var/www"> AllowOverride None # Allow open access: Require all granted </Directory> # Further relax access to the default document root: <Directory "/var/www/html/wecenter">
重启apache服务
service httpd restart
发现访问后台很慢,查看了数据库日志发现是每次访问都尝试解析主机名导致的:
vim /var/log/mariadb/mariadb.log
160826 15:02:06 [Note] /usr/libexec/mysqld: ready for connections. Version: '5.5.50-MariaDB' socket: '/var/lib/mysql/mysql.sock' port: 3306 MariaDB Server 160826 15:40:36 [Warning] IP address '1.1.1.1' could not be resolved: Name or service not known 160826 15:40:39 [Warning] IP address '1.1.1.1' could not be resolved: Name or service not known 160826 17:56:00 [Note] /usr/libexec/mysqld: Normal shutdown
解决办法:
vim /etc/my.cnf
添加如下内容:
skip-name-resolve
重启数据库systemctl restart mariadb