修复我的数据库后,我收到以下错误:
scode_tracker.ap_visits
note : The storage engine for the table doesn't support repair
scode_tracker.visit_length
note : The storage engine for the table doesn't support repair
Run Code Online (Sandbox Code Playgroud)
我发现表的类型是InnoDB.另一张桌子是MyISAM,它已成功修复.
在这里阅读了一些主题后,解决方法是将其更改为MyISAM.我对InnoDB和MyISAM了解不多.我在创建表时没有指定类型.所以我的问题是我应该使用MyISAM而不是InnoDB吗?如果是,我如何将其从InnoDB更改为MyISAM?
我正在使用本教程在我的新Web服务器上安装nginx,php和mysql.
本教程使用的是ISPConfig 3,可以选择使用FastCgi还是PHP-FPM.
我想知道哪两个更好.在性能和速度方面,哪两个最适合与nginx一起使用?
顺便说一句,我在服务器上也启用了memcached和xcache.
我已经尝试了很多组合来获得页面的正确路径,例如javascript代码
escape(window.location.href)
Run Code Online (Sandbox Code Playgroud)
我已经尝试过这个:
$url = "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]$_SERVER[QUERY_STRING]";
Run Code Online (Sandbox Code Playgroud)
但它返回类似:
http://www.mydomain.com/node/4158?asdf=1asdf=1
Run Code Online (Sandbox Code Playgroud)
当实际页面是:
http://www.mydomain.com/node/4158?asdf=1
Run Code Online (Sandbox Code Playgroud)
如果我有这个 URL:http://www.mydomain.com/node/4158#comments例如结果是:
http://www.mydomain.com/node/4158
Run Code Online (Sandbox Code Playgroud)
即没有“#comments”
在我的控制器中,我将此代码用于检查购物车是否为空:
if (!$this->cart->contents()){
$this->session->set_flashdata('message', 'Your cart is empty!');
}
$this->data['message'] = $this->session->flashdata('message');
$this->load->view('templates/header', $this->data);
$this->load->view('bookings', $this->data);
$this->load->view('templates/footer');
Run Code Online (Sandbox Code Playgroud)
在我的"预订"视图中,我设置此代码以显示消息:
<div id="infoMessage"><?php echo $message;?></div>
Run Code Online (Sandbox Code Playgroud)
但是在第一页上加载消息"你的购物车是空的!" 没有显示.但是,当我按F5键或刷新浏览器时,它将显示.
我已经从codeigniter阅读了"CodeIgniter支持"flashdata"的手册,或者只能用于下一个服务器请求的会话数据,然后自动清除."
但是,我不知道在哪里设置此消息,因此它将在"下一个服务器请求"上可用.
我目前正在使用他们每月支付219美元的专用服务器托管hostgator.我的一位朋友建议转移到亚马逊ec2.
我的问题是,亚马逊可以做像hostgator一样的服务无限域名吗?另外,我的每月带宽约为650 GB,我在不同的网站上使用的主要是Drupal和WordPress.如果我计划转移,hostgator的专用服务器相当于什么?
顺便说一下,他告诉我,每月售价165美元左右的媒体是最好的选择.这是从hostgator转移到Amazone ec2的好主意吗?
谢谢
我error_log = /var/log/php5-fpm.log在/etc/php5/fpm/php-fpm.conf运行nginx和php5-fpm的ubuntu 12.04上启用了under .
但是我注意到php5-fpm.log没有logrotate.我试图理解我从互联网上找到的一些配置,但我不愿意在我的生产服务器上测试它.
以下是我发现的一些配置:
/var/log/php5-fpm.log {
rotate 12
weekly
missingok
notifempty
compress
delaycompress
postrotate
invoke-rc.d php5-fpm reopen-logs > /dev/null
endscript
}
Run Code Online (Sandbox Code Playgroud)
这是配置的链接.据我所知,我只需要创建一个名为php5-fpmunder 的文件/etc/logrotate.d/,所以它看起来/etc/logrotate.d/php5-fpm和上面的代码一样.
我还从此链接中找到了另一个示例,其中包含以下代码:
/var/log/php5-fpm.log {
daily
missingok
rotate 52
compress
delaycompress
notifempty
create 640 root adm
sharedscripts
postrotate
[ ! -f /var/run/php5-fpm.pid ] || kill -USR1 `cat /var/run/php5-fpm.pid`
endscript
}
Run Code Online (Sandbox Code Playgroud)
由于我是logrotate配置的新手,我想确保我要做的是正确的.
那么,这两种配置中的哪一种是正确的?第一个还是第二个?我只创建一个文件/etc/logrotate.d/php5-fpm并将代码放在那里是否正确?
对不起,如果这是一个新手问题,我就找不到如何做到这一点的完整说明.
我试图验证一个电子邮件地址,如果它已经存在于表中,但这不起作用.
这是我的代码:
<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">
$('#Submit').click(function() {
var emailVal = $('#email').val(); // assuming this is a input text field
$.post('checkemail.php', {'email' : emailVal}, function(data) {
alert(data);
});
});
</script>
</head>
<body>
<form id="form1" name="form1" method="post" action="view.php">
<p>
<input type="text" name="email" id="email" />
</p>
<p>
<input type="submit" name="Submit" id="Submit" value="Submit" />
</p>
</form>
</body></html>
Run Code Online (Sandbox Code Playgroud)
单击"提交"按钮时,它应首先使用jQuery进行验证并调用checkemail.php文件,如下所示:
<?php
include("../includes/db.php");
$sql = "SELECT email FROM lf_clients WHERE email = " .$_POST['email'];
$select = mysqli_query($con, $sql); …Run Code Online (Sandbox Code Playgroud) 是否可以使用他们的IP地址检查访问者是否仍在线?
我已经创建了一个javascript和php来检查访问者的IP地址,当他们使用onLoad和onBeforeUnload事件打开我的一个页面.但在某些情况下,我的脚本无法检测访问者是否仍在打开我的网站.由于onBeforeUnload一直不可靠.
在这种情况下,我想知道是否有其他方法来检测访问者是否仍在线.
如果访问者仍然打开页面但没有阅读,因为他/她正在阅读其他网站或运行其他程序,我仍然会认为他/她在线.
但是,如果访问者关闭浏览器,但我的脚本无法检测到其卸载事件,我想知道他/她是否还在线.
PHP或javascript对我来说没问题.
我有以下代码来接收短信,我正在尝试获取联系人姓名.
package com.example.smsTest;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.database.Cursor;
import android.net.Uri;
import android.os.Bundle;
import android.provider.ContactsContract;
import android.provider.ContactsContract.PhoneLookup;
import android.telephony.SmsMessage;
import android.widget.Toast;
public class SmsReceiver extends BroadcastReceiver {
private SQLiteAdapter mySQLiteAdapter;
@Override
public void onReceive(Context context, Intent intent) {
mySQLiteAdapter = new SQLiteAdapter(context);
mySQLiteAdapter.openToRead();
Message message = null;
Bundle extras = intent.getExtras();
if (extras == null)
return;
Object[] pdus = (Object[]) extras.get("pdus");
for (int i = 0; i < pdus.length; i++) {
SmsMessage SMessage = SmsMessage.createFromPdu((byte[]) pdus[i]);
String sender …Run Code Online (Sandbox Code Playgroud) 我按照本教程中的说明如何安装nginx,php和mysql,包括php5-memcache.
我想知道我是否还需要安装没有"php5"前缀的memcache或memcached.
截至目前,我的WordPress网站正在抱怨ff:
The following memcached servers are not responding or not running:
Page Cache: 127.0.0.1:11211.
Database Cache: 127.0.0.1:11211.
Object Cache: 127.0.0.1:11211.
This message will automatically disappear once the issue is resolved.
Run Code Online (Sandbox Code Playgroud)
如果需要安装,它不会与php5-memcache冲突吗?或者类似于两个版本的过度使用?
什么是最好的版本?Memcache还是Memcached?php5-memcache或php5-memcached.
我听说带有"d"的memcached只是一个服务或守护进程.但是有人试图将这两者比作我在这里看到的.
php ×5
memcached ×2
mysql ×2
nginx ×2
amazon-ec2 ×1
android ×1
codeigniter ×1
fastcgi ×1
javascript ×1
jquery ×1
linux ×1
logging ×1
logrotate ×1
sms ×1
ubuntu ×1
ubuntu-12.04 ×1
url ×1
xcache ×1